[WordPress]全站使用微软雅黑字体

[WordPress]全站使用微软雅黑字体

因为大多数用的都是国外的主题,所以对中文字体没有相应的支持(其实很多国人的主题也没有…),关于WordPress使用微软雅黑字体这个问题,确实困扰了我不久。

之前一直没时间处理这个问题,毕竟感觉不是很重要,但最近随着改了一下主页的Banner后,发现默认的宋体实在是太丑了!百度了一下,给的方法也是很简单,就是在主题的style.css里将所有样式都加上带有 ‘Microsoft Yahei’,‘微软雅黑’的font-family,但是因为我的LightCube是在香港的服务器,速度并不算快,所以图片和css样式都是用七牛云存储做cdn加速。

虽说是七牛云的cdn,但也是用api调用的,所以说资源的更新需要一定时间,每次改了像style.css等这些css样式表以后,都要通知七牛更新文件,并且还要刷新浏览器缓存,来来回回一次至少五分钟,这实在是不利于调试啊…indecision

但这次在百度上找到了一个不错的办法,直接在主题的function.php中加入一段在页面上echo一个css就好了~

本来搜到的方式只是给WordPress的后台使用微软雅黑,具体代码如下:

function Bing_admin_lettering(){
echo'<style type="text/css">
* { font-family: "Microsoft YaHei","微软雅黑" !important; }
i, .ab-icon, .mce-close, i.mce-i-aligncenter, i.mce-i-alignjustify, i.mce-i-alignleft, i.mce-i-alignright, i.mce-i-blockquote, i.mce-i-bold, i.mce-i-bullist, i.mce-i-charmap, i.mce-i-forecolor, i.mce-i-fullscreen, i.mce-i-help, i.mce-i-hr, i.mce-i-indent, i.mce-i-italic, i.mce-i-link, i.mce-i-ltr, i.mce-i-numlist, i.mce-i-outdent, i.mce-i-pastetext, i.mce-i-pasteword, i.mce-i-redo, i.mce-i-removeformat, i.mce-i-spellchecker, i.mce-i-strikethrough, i.mce-i-underline, i.mce-i-undo, i.mce-i-unlink, i.mce-i-wp-media-library, i.mce-i-wp_adv, i.mce-i-wp_fullscreen, i.mce-i-wp_help, i.mce-i-wp_more, i.mce-i-wp_page, .qt-fullscreen, .star-rating .star { font-family: dashicons !important; }
.mce-ico { font-family: tinymce, Arial !important; }
.fa { font-family: FontAwesome !important; }
.genericon { font-family: "Genericons" !important; }
.appearance_page_scte-theme-editor #wpbody *, .ace_editor * { font-family: Monaco, Menlo, "Ubuntu Mono", Consolas, source-code-pro, monospace !important; }
.post-type-post #advanced-sortables, .post-type-post #autopaging .description { display: none !important; }
.form-field input, .form-field textarea { width: inherit; border-width: 0; }
</style>';
}
add_action('wp_head','Bing_admin_lettering');

嗯,很好理解吧,查看LightCube的源代码中可以在开头看见这段,只不过有点区别。

这里需要注意的是,在WordPress主题的function.php中,其中的 add_action 其实也就是执行函数啦。

传入的第二个参数就是执行的位置,admin_head 应该就是在后台头部加入这段,而我又在function.php上面翻到了一个 after_setup_theme ,字面翻译就知道是在加载完主题之后添加,那么在这里执行这个函数的话,所有需要加载主题的地方,也就是几乎包括整个站点,都会加入这个echo出css修改字体为微软雅黑的样式。嗯,效果也是挺不错的。laugh

 

但是,目前也是发现了几个问题的…

1.在学校电脑室WinXP的报废电脑上用Firefox和IE试了一下,发现字体并没有变啊,Windows应该是自带雅黑字体的啊…

2.因为是在所有加载主题的地方加载css代码,但是我却翻到在rpc当中也出现了!虽然并不清楚那个rpc文件有什么,应该是和SEO有关的吧。

嘛,目前就发现这几个问题啦…

最后,说一下微软雅黑这个字体吧!为什么不选择黑体或者华文细黑呢?因为微软雅黑很对称,并且在边缘也很平滑,数学试卷中,关于字母的轴对称图形,用的都是微软雅黑字体哦~