WordPress 性能优化完全指南

为什么性能很重要?

  • 用户体验:页面加载超过 3 秒,53% 用户会离开
  • SEO 排名:Google 将速度作为排名因素
  • 转化率:每快 1 秒,转化率提升 7%

性能诊断

测试工具

工具 用途 地址
PageSpeed Insights Google 官方测试 pagespeed.web.dev
GTmetrix 详细瀑布图分析 gtmetrix.com
WebPageTest 多地点测试 webpagetest.org
Query Monitor 数据库查询分析 WordPress 插件

关键指标

  • TTFB:首字节时间 < 200ms
  • LCP:最大内容绘制 < 2.5s
  • FID:首次输入延迟 < 100ms
  • CLS:累积布局偏移 < 0.1

服务器优化

选择合适的主机

类型 适合 推荐
共享主机 小型博客 SiteGround
VPS 中型网站 Vultr, DigitalOcean
托管主机 高流量 Cloudways, Kinsta

PHP 版本

  • 使用 PHP 8.1 或 8.2
  • PHP 8 比 PHP 7.4 快 10-20%

启用 OPcache

; php.ini
opcache.enable=1
opcache.memory_consumption=256
opcache.max_accelerated_files=20000

缓存策略

页面缓存

将动态页面转为静态 HTML:

  • WP Rocket(付费,最佳)
  • W3 Total Cache(免费,功能全)
  • LiteSpeed Cache(LiteSpeed 服务器)

对象缓存

缓存数据库查询结果:

// wp-config.php
define("WP_CACHE", true);

推荐使用 Redis:

# 安装 Redis
apt install redis-server

# WordPress 插件
Redis Object Cache

浏览器缓存

# .htaccess
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/jpg "access plus 1 year"
  ExpiresByType image/jpeg "access plus 1 year"
  ExpiresByType image/png "access plus 1 year"
  ExpiresByType text/css "access plus 1 month"
  ExpiresByType application/javascript "access plus 1 month"
</IfModule>

图片优化

压缩图片

  • ShortPixel:智能压缩,支持 WebP
  • Imagify:WP Rocket 配套
  • Smush:免费版够用

使用 WebP 格式

WebP 比 JPEG 小 25-35%:

// 大多数优化插件支持自动转换

懒加载

// WordPress 5.5+ 原生支持
// 或使用插件增强

数据库优化

清理冗余数据

-- 删除修订版本
DELETE FROM wp_posts WHERE post_type = "revision";

-- 清理自动草稿
DELETE FROM wp_posts WHERE post_status = "auto-draft";

-- 优化表
OPTIMIZE TABLE wp_posts, wp_postmeta, wp_options;

优化 autoload

-- 查看 autoload 数据大小
SELECT SUM(LENGTH(option_value)) as autoload_size 
FROM wp_options WHERE autoload = "yes";

-- 应该小于 1MB

推荐插件

  • WP-Optimize
  • Advanced Database Cleaner

前端优化

减少 HTTP 请求

  • 合并 CSS/JS 文件
  • 使用 CSS Sprites
  • 内联关键 CSS

延迟加载 JavaScript

<script src="script.js" defer></script>

移除不必要的资源

// 移除 emoji 脚本
remove_action("wp_head", "print_emoji_detection_script", 7);

// 移除 jQuery Migrate
add_action("wp_default_scripts", function($scripts) {
    if (!is_admin()) {
        $scripts->remove("jquery");
        $scripts->add("jquery", false, array("jquery-core"), "3.6.0");
    }
});

CDN 加速

国际 CDN

  • Cloudflare(免费版够用)
  • BunnyCDN(性价比高)
  • KeyCDN

国内 CDN

  • 阿里云 CDN
  • 腾讯云 CDN
  • 又拍云
  • 七牛云

配置要点

  1. 静态资源使用 CDN 域名
  2. 设置合理的缓存时间
  3. 启用 Gzip/Brotli 压缩

中国特色优化

替换 Google 字体

// functions.php
function remove_google_fonts() {
    wp_deregister_style("open-sans");
    wp_register_style("open-sans", false);
}
add_action("wp_enqueue_scripts", "remove_google_fonts");

替换 Gravatar

使用 Cravatar 或本地头像:

// 使用 WPCom 镜像
add_filter("get_avatar_url", function($url) {
    return str_replace("gravatar.com", "cravatar.cn", $url);
});

性能检查清单

  • 使用 PHP 8.x
  • 启用页面缓存
  • 启用对象缓存 (Redis)
  • 图片已压缩并使用 WebP
  • 启用懒加载
  • 使用 CDN
  • 数据库已优化
  • 移除未使用的插件
  • 启用 Gzip 压缩
  • 关键 CSS 内联

性能问题可以 @speed 专家协助诊断!