(转)关闭WordPress自动加载的Open Sans字体,总是连接googleapi.com,导致打开wordpress很慢

转自http://www.xuanfengge.com/turn-off-automatic-loading-wordpress-open-sans-fonts.html

在网上搜了一番,有四种方法。

(1)安装别人针对这个问题开发好的屏蔽加载谷歌字体的插件

(2)修改过滤函数function.php

(3)自己手动替换到加载谷歌字体的路径

(4)使用GoAgent

我使用了第一种方法来解决问题,

下载插件:

1. 插件一

名称:Remove Open Sans font Link from WP core

地址http://wordpress.org/plugins/remove-open-sans-font-from-wp-core/

简介:移除WP核心的谷歌字体链接.。 Installs ‘Remove Open Sans font Link from WP core’ plugin on your wordpress blog, so it will doesn’t load Open Sans font from Google fonts.

2. 插件二

名称:Disable Google Fonts

地址http://wordpress.org/plugins/disable-google-fonts/

简介:另一个类似的插件

把这两个插件都下了。

二、functions.php过滤

简介

在主题中的functions.php文件末尾加上一下代码之一即可。此方法仅在前台有效,在后台界面无效,因为仅修改主题代码。

1. 代码一

// Remove Open Sans that WP adds from frontend

if (!function_exists(‘remove_wp_open_sans‘)) :

function remove_wp_open_sans() {

wp_deregister_style( ‘open-sans‘ );

wp_register_style( ‘open-sans‘, false );

}

add_action(‘wp_enqueue_scripts‘, ‘remove_wp_open_sans‘);

// Uncomment below to remove from admin

// add_action(‘admin_enqueue_scripts‘, ‘remove_wp_open_sans‘);

endif;

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_s

2、代码二

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‘ );

三、一键替换程序代码

简介

此脚本不仅可以解决wordpress因谷歌cdn资源造成网站加载缓慢的问题,而且只要是支持php的空间也可以解决任何建站程序因为谷歌cdn资源引起的加载缓慢的问题。

使用方法

1. 将下载好的php脚本(PS:脚本作用将程序引入的谷歌字体以及其他谷歌cdn资源替换成360资源)上传至网站根目录。 2. 成功上传文件后直接用浏览器访问该文件,并且点击开始执行操作。 3. 程序执行完成,这时候可以去体验下顺畅的效果(一键解决前台、后台谷歌字体问题)

脚本下载

网盘版:http://pan.baidu.com/s/1sjtwPYl

运行截图

顶部的notice提醒可无视

小结

如果是win系统的主机可能访问脚本的时候会出现警告报错,直接或略即可。上图中用 红框框起来的部分就是该脚本扫描过的文件的文件名列表,YES和NO表示该文件是否查询到符合规定的字符。(PS:该脚本还可以用来扫描黑链以及恶意代 码。)(感谢v7v3.com提供的脚本)

四、使用GoAgent

如果你在使用GoAgent系统代理,可以在SwitchySharp或者AutoProxy选项里添加切换规则:

规则名称:google-fonts

URL 模式:*://*.googleusercontent.com/*

情景模式:GoAgent

字体

Open Sans字体挺好看的,如果是用国外的主题并且用上这个字体,或者是想保留,可以在本地安装该字体。将压缩包里面的文件拷贝到C盘fonts文件夹即可完成安装。

下载地址http://xuanfengge.com/demo/201406/Open-Sans.zip

效果预览http://www.google.com/fonts/specimen/Open+Sans

分析原因

由于最近谷歌被强,很难打开,导致站点在引用谷歌上的资源,如字体、jquery等文件时,会出现严重超时的情况,最终导致站点打开速度极慢。这个可能是其中的一个原因,但具体是什么,又如何找出根源呢?下面来简单分析下(Chrome浏览器下)

1. 查看网络连接

站点在未完全打开的情况下,Chrome的左下角会显示网络请求的状态,如“正在解析主机”、“正在等待tieba.baidu.com响应”。如果此时发现在某个响应等待时间过长(一般是外站资源,如头像、字体),那这个就是一个拖慢速度的原因。

2. 查看网络请求

F12或右键“审查元素”进入开发者模式,选择“Network”,F5刷新页面,查看战情的网络请求。等待完全加载后,查看所有的请求,红色部分 为访问出错,未请求到资源,同时可以再该项的Time看到请求到出结果所花费的时间。如果时间过长,也是一个拖慢站点访问速度的原因

3. 定位根源

根据上面的介绍,找到访问过慢的请求,点击查看详细内容。如出现谷歌字体加载问题,如请求URL为http://fonts.googleapis.com/css?family=Open+Sans&ver=3.9.1。 此时开发者面板切换到Elements页面,CTRL+F搜索“Google”或者其他关键字,可在代码中定位这个请求的位置。

4. 文件定位

上面是找到了原因,但是可能代码并不是在header.php或者index.php里面。那就需要使用编辑器搜索了,在主题中搜索。如使用 sublime编辑器,将主题文件夹拖拽到编辑器中,在项目右键“Find in Folder”,输入关键字,即可在多文件中定位代码位置。找到代码后,注释相关代码即可。如:

如找到并注释代码(functions.php),可解决出现http://fonts.googleapis.com/css?family=Open+Sans&ver=3.9.1请求的问题

//wp_enqueue_style( ‘google-font‘, ‘http://fonts.googleapis.com/css?family=‘.$all_font );

注释以下代码(html5lightbox.js)可解决出现http://fonts.googleapis.com/css?family=Armata请求的问题

// var fontRef = ("https:" == document.location.protocol ? "https" : "http") + "://fonts.googleapis.com/css?family=Armata";

// var fontLink = document.createElement("link");

// fontLink.setAttribute("rel", "stylesheet");

// fontLink.setAttribute("type", "text/css");

// fontLink.setAttribute("href", fontRef);

// document.getElementsByTagName("head")[0].appendChild(fontLink);

如果感觉速度不够快,那就进行更多的优化比如CDN加速、缓存、服务器等等优化吧

(转)关闭WordPress自动加载的Open Sans字体,总是连接googleapi.com,导致打开wordpress很慢

时间: 2024-11-12 04:27:32

(转)关闭WordPress自动加载的Open Sans字体,总是连接googleapi.com,导致打开wordpress很慢的相关文章

黄聪:如何删除wordpress登录之后wp_footer、wp_head自行加载的Open Sans字体、fonts.googleapis.com连接导致卡死的问题

有时候在浏览自己的WordPress网站时,发现网页长时间无响应, 卡在正在连接到fonts.googleapis.com ,如下图所示: 查看网页源码时,发现Head里面有如下一段代码: <link rel='stylesheet' id='open-sans-css' href='//fonts.googleapis.com/css?family=Open+Sans%3A300italic%2C400italic%2C600italic%2C300%2C400%2C600&subset=

移除 WordPress 自动加载的 jQuery,使用自定义 jQuery 版本

WordPress 使用的 jQuery 版本由于需要考虑到很多安全稳定的因素,所以一般不会使用最新版本的 jQuery, 可以通过以下方式移除 WordPress 自定加载的 jQuery,并加载自定义的 jQuery // Remove default jquery function custom_jquery_enqueue() { if( !is_admin()){ wp_deregister_script('jquery'); // 移除默认加载的 jQuery wp_register

laravel的源码解析:PHP自动加载功能原理解析

前言 这篇文章是对PHP自动加载功能的一个总结,内容涉及PHP的自动加载功能.PHP的命名空间.PHP的PSR0与PSR4标准等内容. 一.PHP自动加载功能 PHP自动加载功能的由来 在PHP开发过程中,如果希望从外部引入一个 class,通常会使用 include 和 require 方法,去把定义这个 class 的文件包含进来.这个在小规模开发的时候,没什么大问题.但在大型的开发项目中,使用这种方式会带来一些隐含的问题:如果一个 PHP 文件需要使用很多其它类,那么就需要很多的 requ

retrofit+rxjava+recyclerview+下拉刷新+自动加载更多

安卓开发过程中,网络请求与下拉刷新分页列表的控件几乎可以说是必不可少的,但是每次开发一款产品都要重新开发,肯定是不可取的,那么最好是可以自己整理一个开发框架,那么以后开发,直接引入项目即可 网络框架的封装,从httpclient,到xutils,再到volley,再到okhttp,每次整合都发现多多少少的不足,目前自己觉得最成熟的一个也就是retrofit+okhttp3+rxjava的组合,rxjava不懂的推荐看大神的深入浅出rxjava,retrofit的使用自己网上搜咯 下拉刷新列表的实

ListView下拉刷新,上拉自动加载更多

下拉刷新,Android中非常普遍的功能.为了方便便重写的ListView来实现下拉刷新,同时添加了上拉自动加载更多的功能.设计最初是参考开源中国的Android客户端源码.先看示例图.          图1                                                                                                             图2          图3                      

Yaf零基础学习总结5-Yaf类的自动加载

Yaf零基础学习总结5-Yaf类的自动加载 框架的一个重要功能就是类的自动加载了,在第一个demo的时候我们就约定自己的项目的目录结构,框架就基于这个目录结构来自动加载需要的类文件. Yaf在自启动的时候, 会通过SPL注册一个自己的Autoloader, 出于性能的考虑, 对于框架相关的MVC类, Yaf Autoloader只以目录映射的方式尝试一次. 具体的目录映射规则如下: 对于控制器 Controller 默认模块下为{项目路径}/controllers/, 否则为{项目路径}/mod

Yii引入PHPExcel修改其自动加载方法

修改PHPEXCEL目录下的Autoload.php这个文件,在每次使用PHPExcel的类时关闭Yii的自动加载类,否则的话会因为加载规则的不一致(如yii一般要求类的名字必须是xxController,方法要是actionXXX,而PHPExcel是xx_xxx_xxxx)而起冲突报错. [php] view plaincopyspl_autoload_unregister(array('YiiBase','autoload')); // 取消自动加载 ,就不会报错了PHPExcel_Aut

Yii2的深入学习--自动加载机制

Yii2 的自动加载分两部分,一部分是 Composer 的自动加载机制,另一部分是 Yii2 框架自身的自动加载机制. Composer自动加载 对于库的自动加载信息,Composer 生成了一个 vendor/autoload.php 文件.你可以简单的引入这个文件,你会得到一个自动加载的支持. 在之前的文章,入口文件的介绍中,我们可以看到如下内容: // 引入 vendor 中的 autoload.php 文件,会基于 composer 的机制自动加载类 require(__DIR__ .

ThinkPHP 3.2.3 自动加载公共函数文件的方法

方法一.加载默认的公共函数文件 在 ThinkPHP 3.2.3 中,默认的公共函数文件位于公共模块 ./Application/Common 下,访问所有的模块之前都会首先加载公共模块下面的配置文件(Conf/config.php)和公共函数文件(Common/function.php),即默认的公共函数文件为 ./Application/Common/Common/function.php. 例如,在 ./Application/Common/Common 下新建 function.php,