优化 WordPress 网站以使其更快的 10 种方法

已发表: 2016-02-11

微软最近的一项研究表明,我们的注意力范围已从 2000 年的 12 秒下降到 2013 年的 8 秒,越来越明显的是,网络用户不耐烦了。 进一步的研究表明,如果加载时间超过 3 秒,40% 的人会放弃您的网站。

虽然默认情况下 WordPress 是轻量级和快速的,但普通 Web 用户的配置会使事情变得缓慢且极其复杂。 如果您想要一个快速的 WordPress 网站,请特别注意以下提示。

1.定期优化你的数据库

Regularly Optimize Your Database

WordPress 是一个严重依赖数据库的 CMS,这可能会导致体验变慢。

以下方面使用了大量数据库并可能导致网站速度变慢:

  • 发布修订:发布修订会迅速堵塞您的数据库并使您的网站变慢。 每个后期修订都是您数据库中的一个新条目,这很快就会加起来。 您可以禁用后期修订或限制它。 如果您想要有限的修订,您可以通过添加以下代码来更新您的wp-config.php文件:

    [代码]
    定义('AUTOSAVE_INTERVAL',300); // 秒
    定义('WP_POST_REVISIONS',5);
    [/代码]

    上面的代码指示 WordPress 最多保存 5 个后期修订,并且仅每隔 5 分钟保存一次修订。 您可以编辑代码以反映您的修订后需求。

    或者,如果您不想将代码添加到 wp-config.php 文件中,您可以安装修订控制或 WP-Sweep WordPress 插件来自动管理后期修订。

  • Pingbacks 和 trackbacks: Pingbacks 和 trackbacks 也会阻塞你的数据库,所以你可能想要禁用它们。
  • 博客评论:博客评论不一定是坏的,直到您发现您有数以千计的垃圾评论不必要地占用您的数据库空间。 请务必定期删除垃圾评论,以防止它们占用内存空间。
  • 插件:一些插件将数据和日志存储在您的数据库中; 最初,您会发现它们很有用,直到您意识到它们占用了多少空间。 我有一个 URL 缩短插件,它还显示分析数据使用了多达 160MB 的数据库空间。 是的,这只是一个插件! 通常,这些插件是不必要的,可以删除或替换。
  • 分析和日志:通常,要警惕在您的网站上存储分析和日志数据的插件; 大多数情况下,它们会占用大量数据库空间,并且会使您的网站复杂且缓慢。

更好的是,您可以安装 WP-Optimize 插件并使用它来定期清理您的数据库。

2.优化您的图像

图片的大小加起来就是网站加载所需的时间; 当您运行大量图片的网站时,或者当您为所有文章使用图片并且它们也必须在主页上加载时,尤其会发生这种情况。

有两种方法可以解决这个问题:

  • 定期优化和缩小图像的大小; 你可以在不影响质量的情况下做到这一点,我稍后会解释。
  • 延迟加载图像; 这样,在读者滚动到图像所在的位置之前,图像不会加载。 这也有助于防止网站加载问题。

通过优化您的图像,可以将 2mb 的图像缩小到 600kb,而不会牺牲质量; 这是通过剥离嵌入在图像中的信息来完成的,这些信息对于用户体验来说是不必要的。 您可以通过安装 WP Smush 插件或 EWWW Image Optimizer 插件来优化 WordPress 博客上的图像。 对于不限于 WordPress 的手动选项,您可能需要查看 Kraken。

3.启用缓存和过期标头

如果启用缓存,大多数 WordPress 网站的速度可能会提高一倍; 缓存通过将您网站的一个版本存储在访问者的浏览器缓存中来工作,以便他们在访问您的网站时自动获得缓存版本。 通常,除非您另外配置缓存设置,否则访问者的浏览器缓存将在您更新网站时刷新,确保他们不会丢失任何内容。

通过有效利用缓存,您可以通过以下方式优化您的网站速度:

  • 读者的浏览器不必直接从服务器请求文件,而是从缓存中提取文件,从而为他们带来几乎即时的体验。
  • 由于服务器上的请求减少,服务器上的负载减少,从而导致服务器更快地将文件交付给新用户。

缓存对于提高网站速度非常有效,据观察,为您的网站启用完全缓存可以将网站速度从 2.4 秒提高到 900 毫秒。

您可以通过安装以下插件在您的网站上启用缓存:

  • WP 超级缓存
  • WP 总缓存
  • WordFence(然后启用“Falcon Engine”)

启用缓存后,您还可以启用 Expires Headers 以使您的网站更快; 通过告诉访问者的浏览器何时从您的服务器请求某些文件,Expires Headers 可以节省您的服务器资源并为您的用户提供更快的网站。 这是有关如何启用过期标头的便捷教程。

4. 启用 GZIP 压缩

您最喜欢在计算机上将文件压缩为 ZIP 格式的工具是什么? 7-邮编? 温拉? 您可能至少压缩过一次文件,并注意到一个 200MB 的文件突然缩小到 40MB 的神奇效果? 这到底是怎么发生的? 虽然我不太熟悉压缩的技术性,但我知道可以为您的网站复制它并确保更快的网站体验。

GZIP 压缩有助于将您的网站文件压缩为 ZIP,并将所有内容原封不动地提供给您的访问者; 换句话说,访问您的网站的体验是相同的,但您的网站速度要快得多,因为您的访问者正在使用压缩版本。

在 Smashing Magazine 的一篇文章中,Marcus Taylor 介绍了一个仅由于 GZIP 压缩而从 68KB 变为 13KB 的网站的案例研究; 仅基于 GZIP 压缩,该站点的速度基本上快了五倍。 这是一个教程,展示了启用 GZIP 压缩的 3 种方法。

5. 使用 CDN

Use a CDN

研究表明,CDN 可以将您的网站速度提高多达 60%。

影响内容交付的因素有很多,但是通过印度的互联网连接访问在印度托管的网站比通过美国的互联网连接访问要快得多。对此您无能为力。 除非您使用可靠的 CDN 服务,否则互联网连接距离您网站位置较近的人将获得更快的速度。

通过将您的 WordPress 站点配置为使用 CDN,您可以在世界各地的服务器之间分发您的内容,以便为访问者提供最接近他们的版本; 因此,从亚洲访问的人将获得您网站在亚洲的版本,而不是美国的主要版本

有很多 CDN 提供商,谷歌搜索会显示选项; 一些最受欢迎的 CDN 服务是 CloudFlare(免费)和 MaxCDN(付费)。

6.优化或更改您的 WordPress 主题

您的 WordPress 主题也可以为您的网站加载时间做出很大贡献; 如果您使用的是臃肿的 WordPress 主题,并且严重依赖外部查询,那么与使用基于合规标准构建的主题的人相比,您将获得一个慢得多的网站。

在 Copyblogger 的案例研究中,Jerrod Morris 揭示了网站主题的变化如何能够将网站加载时间从 630 毫秒缩短到 172 毫秒; 尽管其他一切都是平等的,但他的 WordPress 主题有所改变。

7. 将背景图像与图像精灵相结合

您的 WordPress 主题依赖于几个背景图像,并结合 CSS 命令来正确显示干净的背景; 所以你看到的漂亮的背景图像可能由 12 个不同的背景图像组成。 从表面上看,这看起来很正常而且很无辜,直到您意识到这 12 个图像代表了访问者浏览器对您的服务器的 12 个不同请求; 如果你能把这 12 张图片变成 1 张呢? 你会注意到速度的急剧增加。

通过将您的背景图片组合成图片精灵,您可以将您主题的不同背景图片转换为一张图片,然后使用 CSS 让您的网站正常显示。 这将减少访问者的浏览器需要下载的总字节数、往返造成的延迟和请求开销。 结果是为您提供一个更快的网站。

您可以使用 SpriteMe 将图像组合成精灵。

8. 仅对 JavaScript 代码使用异步交付

Use Asynchronous Delivery for JavaScript Codes

您可能已经看到 Facebook 宕机导致网站瘫痪或速度慢得离谱? 有趣的是,这不仅仅发生在您安装 Facebook 代码时。 当您从任何站点同步安装代码时,可能会发生这种情况——尤其是分析或跟踪服务。 如果代码在您的站点上同步安装,则必须先加载代码(取决于代码所在的部分),然后再加载站点上的其他元素。

通过仅对您的 JavaScript 代码使用异步交付,您可以确保您的站点正常且快速地运行,而不管您站点上的 JavaScript 代码的服务器发生了什么。

9.启用HTTP Keep-Alive

每当访问者向您的服务器请求文件时,每个文件都会单独发送; 这种方法的问题在于它必须为每个文件打开一个新连接,最终导致网站速度变慢,具体取决于一次访问您网站的人数。 通过启用 HTTP Keep-Alive,您是在告诉访问者的浏览器通过单个连接传递所有文件; 这样,在发送所有文件之前,连接将保持打开状态,从而减少服务器上打开的连接数量,从而使网站更快。

10. 找一个更好的主人

如果您的虚拟主机很糟糕,那么本文中介绍的技巧不会有太大的不同; 我定期分析和分析网络主机,在此过程中,我看到网络主机在页面加载方面的评分为 2 分(满分 10 分); 使用这些网络主机,您所做的任何事情都不会使您的网站快速运行,因为它们的服务器配置很糟糕。

在 Smashing Magazine 文章中,Marcus Taylor 包含了一个案例研究,以展示网络主机对网站加载时间的影响程度; 他比较了他的两个客户的网站速度; 一个在专用服务器上,另一个在共享主机上。 反应惊人。 专用服务器上的站点的响应时间为 7 毫秒,而廉价共享托管服务器上的站点的响应时间为 250 毫秒。

您的虚拟主机绝对重要; 在安顿下来网络主机之前,请确保您进行了应有的研究。