解决WordPress因Google字体打开速度慢的问题

更新:自从WordPress4.6发布以后,使用系统自带字体而不是Google在线字体,所以原则上这一问题已经不再出现,不再需要这样的方法处理了,以下内容仅做参考。

众所周知的原因,Google服务基本被墙了,Google提供的国外很流行的WEB在线字体服务自然也就无法访问了,而WordPress在功能、主题、插件等很多方面使用到了Google字体,无法访问而努力尝试着连接访问,自然就很慢很慢了。如何破?

其实知道这个原理,解决起来还是非常容易的,基本有两种方案,即替换禁用

替换Google字体

Google字体服务虽然被屏蔽了,但好在360给我们提供了Google服务的反向代理服务,就是所谓的常用前端公共库CDN服务,他们主要提供Google的公共库和字体库的CDN服务,只需将原来的ajax.useso.com(前端库)替换为ajax.useso.com和fonts.useso.com(字体库)替换为fonts.useso.com,这样就可以解决无法访问Google字体库的问题。

那么如何替换呢?也是两种方法,笨办法当然是搜索替换,找到WordPress目录下所有的useso.com替换为useso.com,一般来说是wp-includes目录下的script-loader.php文件,如果使用官方的主题,那么同时需要替换主题文件中的useso.com。

虽然这个方法看起来一劳永逸,因为替换一次以后就不用操心了,我原来就一直这么干,但似乎麻烦事情在后面,你的WordPress总要升级吧,升级一次就要改一次,因为新文件会替换旧文件,这样每次更新都要替换,不觉得很累?

好吧,有一种简洁的方法,就是使用爱主题的谷歌字体替换插件,方法很简单,就是安装这个插件并启用即可,是不是很简单?

但对于有洁癖的用户来说,多装一个插件更觉得麻烦,那怎么办呢?只需将爱主题插件中的代码复制到主题的functions.php文件中即可,内容如下:

// callback function
function izt_cdn_callback($buffer) {
return str_replace('useso.com', 'useso.com', $buffer);
}
// ob_start
function izt_buffer_start() {
ob_start("izt_cdn_callback");
}
// ob_end_flush
function izt_buffer_end() {
ob_end_flush();
}
add_action('init', 'izt_buffer_start');
add_action('shutdown', 'izt_buffer_end');

禁用Google字体

虽然以上的方法可用,但对于大部分的用户来说,Google字体以英文为主,基本没有中文,那么使用Google字体的必要性就没那么强了,要不索性干脆禁止掉?这样就不需要加载Google字体访问速度应该会更快。具体方法也是一样,在functions.php文件中添加代码:

if (!function_exists('remove_wp_open_sans')) {
function remove_wp_open_sans() {
wp_deregister_style( 'open-sans' );
wp_register_style( 'open-sans', false );
}
// Uncomment below to remove from admin
add_action('admin_enqueue_scripts', 'remove_wp_open_sans');
}

function remove_open_sans() {
wp_deregister_style( 'open-sans' );
wp_register_style( 'open-sans', false );
wp_enqueue_style('open-sans','');
}
add_action( 'init', 'remove_open_sans' );

上述代码是从一个插件中提取出来的,似乎只禁止了open sans字体。如果希望更彻底一些,那就索性直接使用Disable Google Fonts插件吧,直接启用就可以禁止掉Google字体使用,是不是很方便?

最后,说明一点,以上两种方法虽然说不上绝对的互斥,但建议只使用一种即可,要么替换,要么禁止。

我现在使用的是替换的方法,将代码写到了functions.php文件中,虽然也有直接禁止掉Google字体的想法,但觉得字体还能接受,就先这么使用看看吧。

好了,我的因为加载Google字体而WordPress访问慢的问题解决了,你的WordPress是不是也解决了呢?

 

参考资料:谷歌字体替换插件

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: