WordPress是一个CMS系统,在不断发展中添加了更多的功能,如果没有正确设置或优化,WP可能会运行缓慢。加载速度在跳出率和转化率方面起着重要作用,同时影响搜索引擎的排名表现,如果你能够将网站时间增加 3 秒,则意味着转化率大约增加 21%!所以今天狂人SEO跟大家分享如何提升网站系统性能,优化WordPress的打开速度。
一、使用快速可靠的WordPress主机
加速 WordPress 的最简单和最重要的方法之一是从基础开始,选择一个快速可靠的 WordPress 主机,不要低估服务器对网站表现的影响。除了国内阿里、腾讯、华为等主流云服务器厂商,外贸站还推荐 SiteGround、Kinsta,他们的基础架构由 Google Cloud Platform 及其高级网络提供支持。他们在所有计划中使用最快的可用机器(C2 计算优化的 VM)。
二、动静态分离
网站实现动静态分离可以大大减轻服务器压力,特别是在大流量的情况下。这也是腾讯、淘宝等大网站,他们图片的域名和网站的域名不是同一个的原因。
网站的静态文件一般有两种:
1、网站的 CSS,JS 和一些主题的常用背景图片和按钮文件,这些图片如果网站不进行改版或者其他改动,基本上是不会修改的。
2、每天更新网站内容时上传的图片或者附件,这些图片文件也是基本不会改动。
解决好静态文件的存储和加速,网站性能就首先能得到基本的保证了,WordPress 构建的网站和博客也是一样的。对于这些静态文件来说,最好的解决方案永远是使用 CDN 网络进行加速,这样服务器的压力将大大降低,因为访问页面只有当前页面是在自己的服务器上,其他所有图片、JS 和 CSS 都是从 CDN 上获取的。
三、服务器缓存优化
服务器级缓存优化既快速又简单。选择一个靠谱的云主机服务商,个人推荐 BGP 或者多线机房,尽量选择独立的服务器,资金有限可以购买轻量级。因为你没有服务器的 Root 权限很多东西无法进行,国内一般推荐:阿里云和腾讯云。然后服务器可以做如下优化:
安装 Redis 或 Memcached 和 PHP Memcached 扩展,两个选其一即可。参考:安装Memcached+Opcache实现加速效果。
PHP 开启 Opcache:把经过编译后的 PHP 代码缓存到共享内存中,并在用户访问的时候直接调用从而起到高效的加速作用。
MySQL 设置 MySQL Query Cache,可以保存查询结果,同样的查询不再从数据库检索,可提升速度。
四、WordPress 缓存和优化
WordPress 默认是一种叫做 WordPress Object Cache 的对象缓存机制,它是把需要缓存的内容按照 Key-Value 这样的模式进行缓存(和 No-SQL 的 key-value 的有点类似),当然它还支持按照 Group 来划分和避免缓存的内容冲突。所以最基础的 WordPress 缓存插件就是,把 WordPress 产生的 Key-Value 存起来,如果是使用 Memcached,就是存到内存,如果使用文件就是存到硬盘中。
当然高级的 WordPress 插件还能做更多,比如 WP Super Cache、WP Fastest Cache、WP Rocket 等缓存插件可以把整个页面缓存到硬盘中,下次直接访问静态的 HTML 文件,让服务器直接绕过 PHP,节约 CPU 时间。Batcache 会把整个页面当做一个对象存到内存里面,个人推荐使用 Memcached 足够。
Memcached 会把 WordPress 的对象存到内存里面,服务器的内存足够大,读取和存储速度也够快,并且内存缓存命中率也大于 99%。另外我们 WordPress 程序经过优化之后,每个页面的查询一般在 2 条左右,所以整个网站效率很高,首页甚至做到 0 SQL,页面生成只需要 0.0013秒。
WPJAM Basic 插件已经集成了 Memcached,下载 WPJAM Basic 之后,将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下即可。WordPress 用不上的功能,或者可能影响性能的功能,如果可以也尽量关闭,WPJAM Basic 的优化设置功能,已经把这一块做到了极致,这是一款不错的优化插件。另外一款 Perfmatters 轻量级优化插件也很专业,只是它是付费插件。
五、使用轻量级 WordPress 主题
WordPress 主题同样是影响打开速度的关键。臃肿的主题即使你设置了快速的 WordPress 托管和缓存,较多的代码和请求数量仍会影响性能,尤其是涉及到 Google Core Web Vitals 时。当你在寻找 WordPress 主题时,建议选择一家拥有良好开发人员和支持且信誉良好的公司。
这里推荐 GeneratePress,这是轻量级主题但仍然包含大量的功能。 Google的性能测试得分为 100/100,并且此测试是针对移动设备模拟的。另外,在 ThemeForest 上购买主题和产品时要小心,不是说 ThemeForest 上的所有开发人员都不好,但他们中的许多人只是为了增加销量,主题优化并没做好。
六、CDN(内容分发网络)
无论你的 WordPress 云主机有多快,都无法解决网络延迟问题。你的数据物理存储在服务器上,用户距离越远,速度就越慢,因为它必须从很远的距离下载你的网站页面。而 CDN 通过在全球边缘服务器上存储你的文件(图像、CSS、JS 甚至 HTML)的副本来解决这个问题。并且进行文件缓存,当访问者查找你的网站时,内容是从最近的地理边缘服务器(缓存)读取而不是从你的云主机。
CDN 也非常适合大流量和降低托管成本。我们在一些测试中,发现 CDN 处理了超过 75% 的流量负载。这大大减少了源服务器的压力,有助于最大限度地减少停机时间,并为你节省带宽或流量成本。做全球业务这里推荐 Cloudflare 与 KeyCDN,选择 Cloudflare 建议开启 APO 服务,APO 使用其 KV 来存储缓存,并且在第一次访问时,它会立即分布在所有边缘服务器上。每个域名每月收费 5 美元,无论你有多少流量。
七、其它方面的优化
1、图像大小优化:可以使用 ShortPixel WordPress 插件进行图像压缩,建议图片换成 .webp 图像格式,比 PNG 或 JPG 小得多,并且现在所有现代浏览器都支持这格式。
2、延迟加载图像:使用延迟加载来优化图片的传送,用户向下滚动时才加载图片,可以减少图片请求。
3、优化数据库:WordPress 在你进行更改内容时存储帖子和页面的修订。如果你需要恢复到旧版本,这很方便。坏消息是存储的修订数量没有限制,我们可以通过 WP-Optimize 插件来清理和删除帖子、页面和自定义帖子类型的修订。清理完后,可以限制 revisions 的数量,确保以后不会再次积累大量数据。可以使用 Perfmatters 插件设置或以下代码添加到 wp-config.php 文件中,比如我将其限制为三个修订版。
define('AUTOSAVE_INTERVAL', 300); // seconds
define('WP_POST_REVISIONS', 3);
4、延迟 JavaScript:推迟加载所有非关键的 JavaScript,这意味着脚本将在页面的其余部分加载完成后再加载。尤其是第三方脚本,如 Google Adsense、Google Analytics等。
5、优化/缩小CSS文件,缩小 HTML 页面大小。
6、禁用谷歌地图并确保只在联系页面增加 reCAPTCHA。也可以使用WP Armor 或 Simple Cloudflare Turnstile 反垃圾邮件插件。
7、如果你有使用 Cloudflare,请关闭 Rocket Loader、Email Address Obfuscation。
以上是 WordPress 性能优化提升网站打开速度的方法。可优化的细节还有很多,比如字体加载本地托管、浏览器缓存、预加载设置、心跳控制(Heartbeat Control),这些通过安装插件都可以轻松设置。如果你仍然对自己的网站速度不满意,也建议站点转换为 GeneratePress + GenerateBlocks。
评论列表