WordPress网站速度优化指南

WordPress网站速度优化的重要性,从2000年到2016年的研究中可以看出,用户的平均注意力范围从12秒降至7秒,这对网站意味着什么?

几乎没有时间向用户显示内容,并吸引用户留在网站上。

速度缓慢的网站意味着用户可能会在网站加载完成之前就离开了。根据涉及亚马逊,谷歌和其他大型网站的案例研究,页面加载时间延迟1秒就会损失7%的转换,从而导致页面浏览量减少11%,用户体验满意度降低16%。

更重要的是谷歌和其他搜索引擎,已经开始在搜索结果中通过降低排名,来惩罚速度缓慢的网站,这意味着速度缓慢的网站流量会更低。

如何检查网站速度

有些站长认为访问速度慢不是网站的问题,只是用户的网速和电脑不够快,这是一种错误的理念。

由于站长经常访问自己的网站,因此Chrome等现代浏览器会将网站进行缓存,这使得网站加载几乎无等待时间,但对于第一次访问网站的用户可能就没有了这种快速的体验,更严重的问题是不同地理位置的用户网络的速度差距更大。

建议使用一些网站测速工具来查看网站的速度,如:百度统计控制台的测速功能、Pingdom等等。这些都是免费的在线工具,可以从不同的位置测试网站的速度。

良好的页面加载时间应该不超过2秒。但如果你能做得更快当然更好,几毫秒的改进可以使你的加载时间缩短一半甚至一整秒。

影响WordPress网站速度的因素

1、网站服务器- 网站服务器配置不当时,是最影响网站速度。

2、WordPress配置 - 如果WordPress网站没有提供页面缓存,那么最大的问题就是服务器过载,从而导致网站变慢或完全崩溃。

3、页面大小 - 主要是未对图片进行优化。

4、糟糕的插件 - 如果使用代码编写得不太好的插件,那么直接影响网站速度。

5、外部脚本 - 外部脚本(如广告,字体加载等)也会对的网站性能产生巨大影响。

既然知道了什么影响了的WordPress网站,让我们来看看如何加快你的WordPress网站。

WordPress主机的重要性

WordPress托管服务在网站性能方面发挥着重要作用,像BlueHost、Siteground等国内外优秀共享托管服务提供商,会采取额外措施来优化网站以提高性能。

国内有很多针对WordPress网站的托管服务提供商,可以依据个人的测评进行选择,国外的WordPress服务器提供商有很多:如:BlueHost、Siteground、wpengine,godaddy等。

只是需要注意是,这些托管服务提供商有很多是共享主机,你的网站会与许多其他客户的网站共享服务器资源,如果他们的网站有大量的流量出入,那么就有可能会影响到你所在网站的速度。

另一方面,使用托管的WordPress服务,运行WordPress的服务器配置都是经过优化的,托管WordPress托管公司还提供自动备份,自动WordPress更新和更高级的安全配置,以保护网站的安全。

安装缓存插件

WordPress页面是“动态的”,当有大量流量进入网站时,它会让网站变慢,缓存可以使WordPress网站的速度提高2~5倍。

有很多好的WordPress缓存插件可用,但建议使用WP Rocket(高级版)或WP Super Cache(免费)插件。

注意:如果您使用的是托管WordPress托管服务提供商,那么您不需要缓存插件,因为它们会为您处理。

可以将缓存插件与CloudFlare、Sucuri等Web应用程序防火墙结合使用,以最大限度地提升性能。

在做这些优化更改时最好先在本地环境中进行测试,以保证不会影响线上用户的使用,可以在本地Windows上安装WordPress环境以便进行测试。 

优化图片加载速度

图片为网站的内容带来了生命,有助于提升参与度,研究人员发现,使用彩色视觉效果会使用户更有可能阅读内容。

在WPBeginner中,只使用两种图像格式:JPEG和PNG,PNG图像格式是未压缩的,压缩图像时会丢失一些信息,因此未压缩的图像质量会更高,质量更高。缺点是文件大小较大。JPEG是一种压缩文件格式,略微降低了图片质量,但尺寸会更小。

如果图片由很多不同的颜色构成,那么选择使用JPEG,如果是一张简单的图片或透明图片,那么选择使用PNG,大多数图像都是JPEG,也可使用Cloudinary自带缓存加速的云存储平台。 

WordPress性能优化最佳实践

安装缓存插件并优化图片后,会发现网站加载速度变快了。 

保持更新WordPress网站

作为一个维护良好的开源项目,WordPress会经常更新,每次更新不仅会提供新功能,还会修复安全问题和错误。WordPress主题和插件也可能有定期更新。 

使用摘要

默认情况下,WordPress会在主页和档案中显示每篇文章的完整内容。这意味着主页、类别、标签和其他存档页面的速度都会变慢。这些页面并不需要访问实际文章,为了加快存档页面的加载时间,可以将站点设置为显示摘录而不是完整内容。

可以在  设置(Settings)>>阅读(Reading),然后选择“对于Feed中的每篇文章,显示:摘要”(For each article in a feed, show: Summary)而不是“全文”(Full Text)。

有关显示摘要的优缺点的更多详细信息,参阅WordPress存档页面中有关完整帖子与摘要(摘录)的文章。 

评论分页

博客帖子获得了大量评论,这是一个很好的指标。但加载这些评论会影响网站的速度。WordPress内置有此问题的解决方案,只需转到设置(Settings)>>讨论(Discussion),然后把“将注释分解为页面”(Break comments into pages)选项勾选上。

有关更详细的说明,参阅有关如何在WordPress中对注释进行分页的指南。 

使用内容分发网络(CDN)

网络托管服务器的位置会对网站速度产生影响,例如,假设托管服务在美国,在美国的用户通常会比中国用户访问速度快,使用CDN(内容分发网络)可以帮助不同地区的用户加快访问速度。

托管视频网站视频

托管视频会花费带宽,可能会被的网络托管公司收取超额费用,应该使用YouTube,Vimeo,DailyMotion等国内外视频托管服务,他们有足够的带宽!

WordPress具有内置的视频嵌入功能,因此可以将视频的URL直接复制并粘贴到帖子中,并自动嵌入。

使用速度优化的主题

当为网站选择一个WordPress主题时,要特别注意速度优化,一些美观且令人印象深刻的主题实际上编码很差,可能会减慢网站速度。

通常更好的方法是使用更简单的主题,并使用高质量的插件来获得所需的功能,而不是选择复杂的布局、华丽动画以及其他不必要功能的主题。

像StudioPress,Themify和Array这样的主题,高级WordPress主题商店提供了编码良好,并且针对速度进行优化的主题。

使用优化滑块插件

滑块是另一种常见的网页设计元素,但会使网站的速度变慢。即使图片如上所述进行了优化,编码不好的滑块插件会让所有的优化工作都成为浪费。

目前比较好的WordPress滑块插件当属于Soliloquy,是迄今为止速度最快的。 

使用优化图库插件

如果是摄影网站或投资组合,那么可能希望使用图库插件来显示照片。使用对速度进行优化了的WordPress图库插件非常重要,建议使用Envira Gallery,它是目前市场上最好的WordPress图库插件,它允许创建漂亮的图像画廊,并且快速加载。 

WordPress速度调优

通过使用上面的WordPress优化方案,应该会看到网站加载速度有了重大提高,因为每一秒都很重要,希望各方面都获得最快的速度,最后需要对WordPress进行一些调优。

以下方案更具一定的技术性,需要对要修改的站点文件和对PHP有基本的了解。为了以防万一,需要先确保对网站进行了备份。

对WordPress长帖进行分页

读者往往喜欢更长、更有深度的博客文章,更长的帖子在搜索引擎中排名会更高,但是如果发布了包含大量图片的长篇文章,可能会影响加载时间。相反,可以考虑将较长的帖子拆分为多个页面。

WordPress内置了此功能。只需在文章中需要分页的位置,添加<!––nextpage––>标记即可。

减少外部HTTP请求

许多WordPress插件和主题加载来自其他网站的各种文件,其中许多文件都经过优化,可以加快加载速度,比托管在自己的网站上更快,但如果插件发出了很多这样的请求,那么它可能会大大减慢网站速度。

通过禁用脚本和样式或将它们合并到一个文件中来减少所有这些HTTP请求,参考关于如何禁用插件的CSS文件和JavaScript的教程。

减少数据库调用

注意:此步骤更具技术性,需要对PHP和WordPress模板文件有基本的知识。

有很多编码不好的WordPress主题,他们忽略WordPress的标准做法,直接进行数据库调用,或者对数据库进行发送不必要的请求,这可能会让网站的工作量加大,从而影响服务器的响应速度。

即使编码良好的主题也可以使下以下代码,对数据库进行调用,来获取博客的基本信息。

在这个例子中,每次看到  <?php,这都是新数据库调用的开始:

<html xmlns="http://www.w3.org/1999/xhtml" dir="<?php language_attributes(); ?>">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?> 
charset=<?php bloginfo('charset'); ?>" />

你不能责怪主题开发者,他们根本无法知道网站所使用的语言。

但是,如果使用子主题自定义站点,则可以使用特定信息替换这些数据库调用,以减少这些数据库调用。

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

优化WordPress数据库

使用WordPress一段时间后,数据库会有许多可能不再需要的信息,为了提高性能,可以消除一些不必要的信息来优化数据库。

使用WP-Sweep插件可以对这样的数据进行管理,它允许通过删除诸如:删除帖子、修订版本、未使用的标签等内容来清理WordPress数据库,还可以通过单击来优化数据库的结构。

限制发布修订

发布修订会占用WordPress数据库中的空间。一些用户认为修订也会影响插件运行的某些数据库查询。如果插件没有明确排除后期修订,则可能会通过不必要地搜索它们来减慢您的网站速度。

可以轻松限制WordPress为每篇文章保留的修订数量,只需将以下这行代码添加到wp-config.php文件中即可。

define( 'WP_POST_REVISIONS', 4 );

此代码将限制WordPress仅保存每个帖子或页面的最后4个修订版本,并自动丢弃旧版本。 

禁用内容的热链接和内容泄露

如果你在WordPress网站上创建高质量的内容,那么可悲的事实是它迟早会被盗。

比如有的网站直接使用你网站上提供的图片,实际上,他们正在窃取你的网络托管带宽,并且没有获得任何流量。

只需将此代码添加到网站的.htaccess文件中,即可阻止来自WordPress网站的图片热链接。

#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?wpbeginner.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L] 

注意:不要忘记用自己的域名把wpbeginner.com替换掉。

以上就是加快WordPress网站速度的一些方案,希望可以为WordPress网站速度带来提升。