我可以将可以改善 WordPress 网站性能的措施归类如下。可以根据初始测试结果更改优先级。此外,每一项措施可能并不适用于每个 WordPress 网站。测试和规划阶段对于决定需要在哪个网站上完成哪些任务非常重要。
- 初始性能测试
- 在 GTMetrix、Google PageSpeed Insights、Pingdom 等服务上测试网站并注册记录。
- 检查 Google Search Console 的“核心网络生命力”部分是否存在已检测到的问题。
- 制定一个计划,列出需要先做什么才能在更短的时间内获得更多的收益。
- 前端/浏览器端改进
- 资产优化
- 图像文件
- 图像响应尺寸
- 图像压缩
- 图像转换(PNG -> JPG、JPG->WEBP 等)
- 延迟加载
- 视频文件
- 如果可能的话,视频外包(使用 Vimeo、Youtube)
- 视频响应式尺寸
- 视频压缩
- 视频转换(MOV -> MP4、MP4 -> WEBM 等)
- 延迟加载和/或外观
- SVG 文件
- SVG 压缩
- *小化
- PDF 文件
- PDF 压缩
- CSS 和 JS 文件
- 减少未使用的 CSS 和 JS 文件的数量
- 仅在需要时致电
- 如果从未使用,则删除
- 消除阻塞渲染的 CSS 和 JS 文件
- JS – 通过 async/defer 属性
- CSS – 通过收集关键 CSS
- 分组和合并以减少请求数量
- *小化
- 减少未使用的 CSS 和 JS 文件的数量
- 自动优化未来资产/媒体项目
- 浏览器缓存
- 缓存策略配置
- 传输压缩(Gzip、Brotli 等)
- 使用 CDN 服务
- 图像文件
- 第三方优化
- 减少和/或延迟加载第三方服务
- 使用 CloudFlare Zaraz、PartyTown 等服务。
- AMP
- 资产优化
- 后端改进
- 主题和插件优化
- 删除未使用的主题和插件
- 如果可能的话,使用轻量/高性能的主题和插件
- 更新主题和插件
- 自定义插件、主题或子主题代码优化
- 消除冗余数据库查询
- 必要时使用瞬态
- 控制内存消耗
- 尽可能使用原生WP功能
- 如果自定义帖子类型中添加的帖子过多,请使用自定义数据库表
- 数据库和内容优化
- 修复数据库表
- 限制修订,或删除不需要的支持
- 添加已删除帖子的到期日期
- 删除未使用/重复的帖子、术语、分类法、附件、用户、评论、网站等(包括草稿、垃圾箱……)
- 删除未使用/重复的元数据
- 使用更快/更高性能的数据库
- 更新数据库服务器版本
- 使用托管数据库服务
- 在单个 URL 上显示较少的数据(例如存档页面)
- 缓存
- 对象缓存(Redis、Memcached 等)
- 数据库对象缓存
- 片段缓存
- URL 缓存
- 其他配置/性能限制
- 减少 Cron 作业
- 如果可能的话,禁用 Pingback 和 Trackback
- 配置 Heartbeat API
- 错误日志检查和修复
- 更新 WordPress 核心
- 主题和插件优化
- 服务器端改进
- 使用速度更快、性能更佳的机器作为服务器
- 使用更快/性能更好的服务器(NGINX、LiteSpeed 等)
- 使用托管服务器
- SSL 证书和配置
- 服务器端缓存
- 网络/代理端改进
- 预防恶意机器人
- DDos 检测
- 如果可能的话,阻止管理员访问
- 网络端缓存(CloudFlare、CloudFront、Varnish 等)
- 在 CDN 中提供缓存
- 缓存加热器/发生器
- 可扩展性
- 容器化
- 负载均衡
- *终性能测试
- 在 GTMetrix、Google PageSpeed Insights、Pingdom 等服务上再次测试该网站,并比较记录。
- 制定未来性能监控和一致性策略的计划。
- 监控
- 集中日志记录、错误警报
- 下行警报
- 核心 Web 指标的自动化测试
- 纳入您的 CI/CD 管道