预计阅读时间: 4 分钟

Google Fonts导致WordPress 速度问题
Google服务器一直以来被国内屏蔽得很厉害,具体原因我们不去深究,其实这对于WordPress外贸建站的朋友倒是没有什么影响,毕竟网站主要是给海外用户浏览的,Google的API调用速度对于他们而言不存在什么问题。但是如果是中文的企业网站使用WordPress来做的话,如果你使用的是老外开发的WordPress企业主题,在国内网络访问的时候,多数网站就会长时间卡在诸如Fonts、Maps之类的API调用上,因为”useso.com”可不是一时半会儿能连上的,这无疑是大大降低用户体验的状况,更何况WordPress 自3.9+版本后内置了Google Fonts代码,所以我们在这里还是有必要探讨一下针对这个问题的解决方案。

方案A:插件禁止WordPress 后台加载

安装启用 Disable Google Fonts 或者 Remove Open Sans font Link from WP core 其中之一即可,这类插件主要针对的是WordPress程序本身内置的”Open Sans”字体,安装激活后基本也不用进行什么参数设置。但是WordPress的 Google Fonts 调用除了程序本身之外,还可能会设计主题模板、功能插件比如 Revolution Slider 幻灯插件等,所以如果此解决方案没有很彻底的移除API调用的话,就需要进一步结合下面的方法进行深入摸索。
插件】禁止WordPress 后台加载Google Fonts

方案B:搜索并删除相关代码

首先重点关注主题模板的”functions.php”和”header.php”这两个文件,试试搜索与Google相关的代码片段,把涉及API调用的代码注释或删除掉。当然,实际操作的时候并不一定就是这两个文件,如之前所说有些插件也会存在API调用,何况很多主题开发者有自己的编码习惯,可能会把主题文件按照自己的喜好进行拆分调用,这样的话就需要大家多花点时间去搜索研究了。
网上流传有一些一刀切的办法,大家也可以试试,不过在进行修改之前把源文件备份一下最好。直接在functions.php 文件添加代码:


add_filter('gettext_with_context', 'disable_open_sans', 888, 4 );
function disable_open_sans( $translations, $text, $context, $domain )
{
if ( 'Open Sans font: on or off' == $context && 'on' == $text ) {
$translations = 'off';
}
return $translations;
}

或者使用下面这段:


add_filter('gettext_with_context', 'disable_open_sans', 888, 4 );
function disable_open_sans( $translations, $text, $context, $domain )
{
if ( 'Open Sans font: on or off' == $context && 'on' == $text ) {
$translations = 'off';
}
return $translations;
}

这个方案还是需要在代码中进行,最主流的方法就是把主题或插件中类似”fonts.useso.com”之类的代码用”fonts.useso.com“进行替换。Useso是国内360推出的常用前端公共库CDN服务之一,“只需替换一个域名就可以继续使用Google提供的免费字体库了。同样通过样式表引用这些资源,让网站访问速度瞬间提速吧!”
这个方案会涉及到一个WordPress核心文件”wp-includes/script-loader.php”的修改,这其实是不推荐实施的。不过网络上有热心网友自主开发了一个小插件 DW Replace Open Sans 来便捷的实现这个方案,大家不妨试试。
当然如果你不嫌麻烦,也可以把字体拿回来放自己服务器上。首先是翻墙或用其他办法先把那些个字体文件下载回来,找到字体描述文件内容以及woff文件的url,分别把这几个woff文件下载下来保存到自己的网站服务器上,最后把代码中的相关调用链接替换成自己的URL即可。

此文章对你有帮助吗? 已有 0 人说这篇文章是有用的。