博客创建没几天,QQ群里人说我的博客访问很慢,我思来想去,折腾半天原来是我的一个插件采用了google代码高亮的资源,导致网站一直加载被牆资源。
想必很多和我一样新手站长都遇到新建WordPress网站很慢的问题,下面是我收集到WordPress新站遇到国内访问慢的问题解决方案,分享给大家。
一、禁止WordPress头部加载s.w.org
从WordPress4.6开始,官方就加入头部加载s.w.org资源,目的是为加快访问,但是s.w.org国内一些地方被墙或者访问慢,反而会影响网站速度,我们需要屏蔽它。
将下面的代码添加到你的主题目录的functions.php文件中:
function remove_dns_prefetch( $hints, $relation_type ) { if ( 'dns-prefetch' === $relation_type ) { return array_diff( wp_dependencies_unique_hosts(), $hints ); } return $hints; } add_filter( 'wp_resource_hints', 'remove_dns_prefetch', 10, 2 );
保存即可
二、禁止enjoy表情加载
禁止国外资源的enjoy表情加载
// Remove emoji script
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
add_filter( 'emoji_svg_url', '__return_false' );
三、禁止Google字体
打底Google被ban后,连它的字体都不放过,
没办法在国内只能屏蔽了。
// 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 ); } // 前台删除Google字体CSS //add_action('wp_enqueue_scripts', 'remove_wp_open_sans'); // 后台删除Google字体CSS add_action('admin_enqueue_scripts', 'remove_wp_open_sans'); endif;
最后总结所有代码,把下面这段放到functions.php即可
// 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 ); } // 前台删除Google字体CSS //add_action('wp_enqueue_scripts', 'remove_wp_open_sans'); // 后台删除Google字体CSS add_action('admin_enqueue_scripts', 'remove_wp_open_sans'); endif; function remove_dns_prefetch( $hints, $relation_type ) { if ( 'dns-prefetch' === $relation_type ) { return array_diff( wp_dependencies_unique_hosts(), $hints ); } return $hints; } add_filter( 'wp_resource_hints', 'remove_dns_prefetch', 10, 2 ); // Remove emoji script remove_action( 'wp_head', 'print_emoji_detection_script', 7 ); remove_action( 'wp_print_styles', 'print_emoji_styles' ); add_filter( 'emoji_svg_url', '__return_false' );
总结:
WordPress毕竟国外的东西,会引用一些国外资源,在国内大环境下国外的资源往往可能访问不理想甚至访问不了的情况。
如果在排除服务器问题的情况下,网站仍然加载过慢,就需要检查是否安装使用过国外引用被墙资源的插件或者主题,把它引用链接屏蔽或者替换成国内资源。
想当年也是因为墙的问题走了很多弯路
看来是老站长了哈