微信扫码,获取更多

WordPress网站速度优化(一):谷歌字体、Gravatar头像、前端公共库加速,禁用自带Emoji

因为我们的WordPress个人网站选用的服务器配置不高,为了给用户更好的访问体验,除了之前采取的防护措施外,我们还需从内出发,进一步优化我们的网站,使其拥有更快的响应速度。

本文主要写谷歌字体、Gravatar头像、国外前端公共库CDN加速,禁用WordPress自带Emoji,这四项优化。

如果你使用的是国内开发者写的WordPress中文主题,大概率不用做这四项优化,因为众所周知的原因,咱们国内用户使用不了很多海外互联网大厂的产品,所以为了能让主题加载更快,给用户更好的体验,面向国内用户的主题几乎都会做这四项优化。

判断你的主题是否进行了优化

判断谷歌字体、Gravatar头像是否优化,是否已禁用自带Emoji

Nano 打开你当前主题的functions.php文件进行查看:

nano /root/my_website/wordpress/html/wp-content/themes/你的主题名/functions.php

Nano 中打开文件后,你可以同时按 CTRL + W 键启动搜索功能,这将在屏幕底部显示搜索提示符,然后分别搜索关键词:googlegravataremoji

  1. 使用 nano 打开文件
  2. 按 CTRL + W 或者 F6
  3. 输入搜索关键字
  4. 回车进行搜索
  5. 再次按 CTRL + W 可以进行下一次搜索

如果能搜索到相关代码,将代码发给AI,让AI给解释代码含义(google对应谷歌字体,gravatar对应Gravatar头像,emoji对应wordpress自带的emoji功能,一般能搜索到就是主题对相应项目进行了优化),判断是否为优化代码。如果搜索不到,那大概率是没有优化

判断是否使用国外前端公共库CDN

很多网站和 WordPress 主题/插件,都会用到一些非常流行的、开源的前端框架或库,比如:

  • jQuery: 一个经典的 JavaScript 库。
  • Bootstrap: 一套用于快速搭建响应式页面的 CSS/JS 框架。
  • Font Awesome: 一套非常流行的图标字体库。
  • Vue.js, React: 现代 JavaScript 框架。

这些库的文件通常都比较大。为了加快加载速度,开发者们不会把这些文件都打包在自己的主题里,而是选择从一些公共的、免费的 CDN (内容分发网络) 上加载。这些 CDN 就被称为前端公共库 CDN

常见的国外前端公共库 CDN:cdn.jsdelivr.net、cdnjs.cloudflare.com、unpkg.com

问题就出在这里: 这些国外的 CDN 在国内的访问速度可能非常不稳定,有时甚至会被屏蔽,成为新的性能瓶颈。

打开你的网站,右键 → 查看网页源代码,再按CTRL + F,依次搜索:cdn.jsdelivr.netcdnjs.cloudflare.comunpkg.com

如果有这些外链,说明用了使用了对应的国外前端公共库CDN,我们需要对其进行优化。

网站速度优化

谷歌字体、Gravatar头像、国外前端公共库CDN优化

谷歌字体、Gravatar头像、国外前端公共库CDN这三项优化,本质都是一样的,即国外的产品在国内访问速度不稳定,我们需要对其进行加速,加速方法我决定统一采用镜像替换的方法,通过在主题的 functions.php 文件中添加代码来实现。

登录服务器,打开网站当前主题的functions.php文件进行编辑。

nano /root/my_website/wordpress/html/wp-content/themes/你的主题名/functions.php

functions.php文件的末尾,添加以下代码(注意:代码里的镜像网址都是我搜索得来的,不一定是响应速度最快的,如果你找到更好的,也可以用你自己找到的):

/**
 * 优化:将 Google Fonts 替换为国内镜像 (fonts.font.im)
 * 作用:解决因 Google 服务器被屏蔽导致的网站加载缓慢问题。
 */
add_filter( 'style_loader_src'function( $src ) {
    if ( strpos( $src, 'fonts.googleapis.com' ) ) {
        // 将原始的 Google Fonts URL 替换为国内镜像 URL
        $src = str_replace( 'fonts.googleapis.com''fonts.font.im', $src );
    }
    return $src;
});

/**
 * 优化:将 Gravatar 头像源替换为国内镜像 (cravatar.cn)
 * 作用:解决头像加载缓慢或无法显示的问题。
 */
add_filter( 'get_avatar_url'function( $url ) {
    // 检查 URL 是否包含 Gravatar 的域名
    if ( strpos( $url, 'gravatar.com' ) ) {
        // 将 Gravatar 域名替换为 cravatar.cn
        $url = str_replace( 'secure.gravatar.com''cn.cravatar.com', $url );
        $url = str_replace( 'www.gravatar.com''cn.cravatar.com', $url );
        $url = str_replace( 'gravatar.com''cn.cravatar.com', $url );
    }
    return $url;
});

/**
 * 优化:将海外前端公共库CDN(假设使用了:cdnjs.cloudflare.com) 替换为国内镜像:s4.zstatic.net
 * 作用:解决因海外 CDN 不稳定导致的 JS/CSS 加载失败或缓慢问题。
 */
add_filter( 'script_loader_src''replace_public_library_cdn_js'9999 );
add_filter( 'style_loader_src''replace_public_library_cdn_css'9999 );

// 选择一个国内镜像源
define('MY_CDN_REPLACE_HOST''s4.zstatic.net'); 

// 处理 JS 文件
function replace_public_library_cdn_js( $src ) {
    $hosts_to_replace = [
        'cdnjs.cloudflare.com',
    ];
    
    foreach ( $hosts_to_replace as $host ) {
        if ( strpos( $src, $host ) ) {
            $src = str_replace( $host, MY_CDN_REPLACE_HOST, $src );
        }
    }
    return $src;
}

// 处理 CSS 文件 (代码与 JS 的一样,只是挂载的钩子不同)
function replace_public_library_cdn_css( $src ) {
    return replace_public_library_cdn_js( $src );
}


禁用WordPress自带Emoji

WordPress 为了让老旧的浏览器也能显示 Emoji 表情,会默认加载一个wp-emoji-release.min.js脚本。这个脚本对于现代浏览器来说是完全多余的,而且会产生一次额外的 HTTP 请求。

操作: 在 functions.php 中添加禁用代码:

/**
 * 优化:禁用 WordPress 自带的 Emoji 功能
 * 作用:减少不必要的 HTTP 请求,轻微提升性能。
 */
remove_action( 'wp_head''print_emoji_detection_script'7 );
remove_action( 'admin_print_scripts''print_emoji_detection_script' );
remove_action( 'wp_print_styles''print_emoji_styles' );
remove_action( 'admin_print_styles''print_emoji_styles' );

好了,如果你的WordPress网站因上述原因导致卡慢,那么经过上面所有优化后,网站打开速度应该有显著提升。

未经允许不得转载:无花果 » WordPress网站速度优化(一):谷歌字体、Gravatar头像、前端公共库加速,禁用自带Emoji

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏