晨风 菜单

查看所有标记的WordPress

固定连接:

加快WordPress – 完整优化指南

分类:WordPress, 笔记
发表评论 • 12 次围观

WordPress是一个非常强大和流行的内容管理系统(CMS)。它目前支持互联网上所有网站的32%以上。这意味着您访问的每四个网站中最有可能运行WordPress。EA,CBN,ESPN甚至白宫等网站都使用WordPress为其网站供电。我个人认为,在简化网站的在线营销方面,WordPress是企业主甚至企业网站的最佳解决方案。

加快WordPress - 完整的优化指南

一个反应速度慢的网站

即使WordPress超级流行,它也可以带来代价。而且这个代价就是网络性能。最初WordPress是作为博客平台创建的。但它已经发展到远不止于此。随着这种演变,需要更多的功能。如果没有正确设置,WordPress有很多不同的配置可以运行得很慢。

一个缓慢的网站将永远对访客的体验非常不利。它可以在您的反弹和转化率中起主要作用。拨号的日子早已过去,人们没有他们过去的耐心。如果他们被困在等待5秒的页面上,他们很可能会点击后退按钮并选择下一个搜索引擎结果来查找他们正在寻找的内容。根据我的经验,推荐的网站加载时间是2秒或更短。如果您的网站高于此,那么您可能已经完成了一些优化。

你现在应该做的第一件事是测试你的WordPress网站的速度。这将为您提供开始的基准。我推荐免费的Pingdom速度测试工具。由于缓存和CDN,请确保至少运行三次测试以获得正确的结果。

Pingdom网站速度测试

加速WordPress

在这篇文章中,我想逐步介绍如何配置我的所有WordPress站点以及如何轻松实现500ms(毫秒)加载时间的速度。

关于我的一点点。我花了10多年时间使用WordPress,目前正在为高性能托管WordPress托管公司Kinsta工作。在此之前,我曾在全球内容交付网络KeyCDN工作。我花了数千小时优化WordPress网站,以确保它们以最佳性能运行。作为一名互联网营销人员,WordPress帮助我实现了惊人的成就,它也可以帮助您!只需按照以下步骤即可立即加速WordPress

我保证,无论您的背景或专业水平如何,您都会在我的帖子中找到有用的内容。

  1. 快速WordPress主机
  2. 内容分发网络(CDN)
  3. 利用Perfmatters插件
  4. 优化数据库
  5. 轻量级WordPress主题
  6. 摆脱插件
  7. 压缩图像
  8. 将CSS带到Bare Minimum
  9. 更改Web字体
  10. WordPress缓存
  11. 调整Google Analytics谷歌分析
  12. 速度测试结果
  13. 获得Web性能审核
  14. 额外的加速WordPress提示

1、快速WordPress主机

加速WordPress最简单,最重要的方法之一就是从坚实的基础开始。这意味着选择一个可靠而快速的WordPress主机。👍到目前为止,这是您整体页面加载时间的最大因素。

如果你在一个小网站上,你最有可能在廉价的共享网络托管计划。计划本身的名称确实定义了它的含义。“共享”一词意味着您的网站与许多其他人的网站一起托管在服务器上。这意味着他们都在争夺相同的资源。

我敢肯定你会一直看到人们在宣传BlueHost托管。不幸的是,很多这些网站都是由联盟营销人员经营,只是想快速赚钱。大多数情况下,联盟营销人员实际上并没有使用它们,他们只是将人们引荐给他们。选择像BlueHost这样的主机是您在托管网站时做出的最糟糕的决定之一。您知道BlueHost归EIG所有吗?EIG是一家一直在购买所有蹩脚主机的公司。以下是EIG拥有的完整主机列表。你几乎可以期待所有人都能提供同样糟糕的服务。

虽然我确实是一名联盟营销人员,但我对网络性能的热情始终胜过这一点。这就是为什么我只会将您推荐给我目前用于我的网站的网络托管服务提供商。拥有一个优秀的网络托管服务提供商意味着您不必担心停机或速度。以下是我支持100%的两个WordPress托管服务提供商。

选项1 – 经济实惠的WordPress主机 – SiteGround

如果您正在寻找更实惠的WordPress主机,我强烈推荐SiteGround。他们提供HTTP/2,PHP 7,SSD和大量其他功能的共享主机,每月只需3.95美元!这与共享主机托管商一样好。

SiteGround共享WordPress主机

SiteGround非常棒,如果你需要一个便宜的主机,它仍然拥有大家伙所做的一些最新功能。一旦你开始获得大量的流量,我建议你投资一个更大的主机,如Kinsta。

点击查看

选项2 – 高性能托管WordPress托管 – Kinsta

如果您正在寻找高性能的托管WordPress主机,我只能赞美Kinsta。Kinsta的庞大功能集实际上使它们与其他托管的WordPress托管公司区别开来。如果你去鲨鱼坦克,Kinsta就是你想要的主机。Kinsta目前的一些客户包括Mint.com,Ubisoft,TripAdvisor和Intuit等!

Kinsta的一些功能包括Nginx,Ubuntu,PHP 7.2,HTTP/2,CDN,免费SSL,MariaDB,通过亚马逊线路53的免费高级DNS,通过New Relic进行正常运行时间监控,并且他们在业务中拥有一些最好的支持!他们使用软件容器,这意味着站点之间不共享资源。我的所有网站都使用Kinsta托管

Kinsta WordPress主机

点击查看

2、内容分发网络(CDN)

无论您的网络托管服务提供商有多快,您都无法摆脱延迟问题。托管网站时,它始终存储在数据中心某处的单个服务器上。对于全国各地的访问者来说,事情要慢得多,因为它必须在全球范围内下载所有内容。CDN通过在全球范围内的服务器(也称为POP)上存储您的资产副本(如图像,CSS和JavasScript)来修复此问题。它还会缓存它们。这样,当来自全球各地的访问者查找您的网站时,内容将从本地POP而不是您的Web服务器传送。

我当然在我的所有网站上使用KeyCDN。持有POPs(目前为33个)的POP数量为0.04美元/GB(全球最低价格),实际上没有比较,这是一个明智的选择。KeyCDN还免费提供原始盾牌和安全令牌,大多数其他提供商收取数百美元。KeyCDN还具有免费的Let’s Encrypt集成,因此您可以免费部署SSL。它们完全支持HTTP/2和最新协议,以便尽快传送您的内容。

keycdn

如果你还没有使用CDN那么你就是在消耗自己的建站时间。具有相当大流量的博客通常在20-25 GB带宽范围内,并且实施CDN每月花费不到3美元。突然之间,您的网站将从世界各地的多个POP中获得增值。我使用免费的CDN Enabler插件来部署我的CDN。

Kinsta实际上与KeyCDN合作。因此,如果您将Kinsta用作WordPress主机,则免费提供KeyCDN!👏

设置WordPress CDN插件

CDN Enabler是一个完全免费的WordPress插件,旨在将您的资产链接到您的内容交付网络提供商(CDN)。了解CDN如何帮助您将网站加速68%!
在撰写本文时,该插件目前有10,000多个有效安装,并且评分为4.8星,满分5星。人们似乎都很喜欢它。以下是一些评论。

找不到比这更容易的插件来为您的网站提供CDN。快捷方便,供你所需!- kmartin26

它速度极快,没有不必要的功能。- bnwmovies

如果你在redis缓存上运行并且不想要任何膨胀的缓存插件,那么它非常轻量级并且似乎运行良好。- rsmith4321

这个插件究竟做了什么?基本上,当您使用CDN时,他们会为您提供一个特殊的URL,例如cdn.yourdomain.com。这需要在所有WordPress图像,CSS和JavaScript文件上进行更新。这个插件让你输入你的CDN网址和boom。
怎么样?你准备好了! 请按照以下步骤进行安装并进行设置。

第1步

在WordPress面板中的“插件”下单击“添加新的”,然后搜索“CDN Enabler”。它应该是第一个出现并附着“作者:KeyCDN”。然后单击“立即安装”按钮。如果你愿意,也可以直接从存储库下载CDN Enabler

安装CDN Enabler

第2步

单击“激活插件”。

激活CDN Enabler

第3步

在WordPress仪表板的“设置”下,单击“CDN Enabler”。然后,如果您使用的是通过HTTPS运行的CDN,则需要输入CDN URL并启用HTTPS选项。如果您不知道如何查找CDN URL,可随时向CDN提供商寻求帮助。然后单击“保存更改”。

CDN Enabler设置

就这样!现在,您网站上的所有内容都将链接到CDN。

点击下载

KeyCDN 451 Restricted

但是由于墙的缘故,https://keycdn.com自2016年打开则为“451 Restricted”状态。

对于内陆来说,如果不需要https支持,更推荐使用Azure CDN(Verizon),表现极为优秀,如果你想使用https,则推荐CloudFront和CDNsun(有$50的最低充值额)

当然,如果需要或者想要备案,就另当别论了!

3、利用Perfmatters插件

Perfmatters是一个轻量级的WordPress性能插件,由我和我的兄弟开发,基本上包括我们在我们的网站上使用的所有窍门,以获得在竞争中的额外优势。只需点击几下,即可从我们的网站获取所有秘密武器。

Perfmatters

它的一些功能包括:

  • 禁用表情符号
  • 禁用自我Pingback
  • 禁用XML-RPC
  • 在本地托管分析
  • 禁用和/或限制WordPress修订
  • 删除从静态资源中查询字符串
  • 禁用嵌入
  • 更改频率和/或禁用Heartbeat API
  • 更改自动保存间隔
  • DNS预取
  • Preconnect
  • 直接从插件开发者获得支持

您还可以在每个页面/每个帖子的基础上禁用WordPress中的脚本。这非常强大,可以大大提高WordPress网站(尤其是您的主页)的速度。以下几个例子可以用于:

  • 流行的联系表单 7插件会在每个页面和帖子上加载。您只需单击一下即可轻松地在任何地方禁用它,并仅在您的联系页面上启用。
  • 社交媒体分享插件只应加载到您的帖子上。您可以轻松地在任何地方禁用它,只加载在帖子类型甚至自定义帖子类型上。例如,由于Perfmatters插件,你现在在这篇文章的侧边栏上看到的社交分享插件不会加载到我们的任何页面上。

脚本管理

以及更多!它甚至还具有CDN链接功能。因此,如果您使用我们的Perfmatters插件,则无需使用CDN Enabler插件。(上面提到的)

点击查看

4、优化数据库

接下来要做的是确保优化WordPress数据库。如果您之前没有这样做过,那么您需要检查并确保没有任何混合的MyISAM和InnoDB表。基本上,有两种不同类型的MySQL表。InnoDB已经证明自己要快得多。谈到加速WordPress的方法,这往往是一个被忽视的优化。

接下来要做的就是清理最有可能位于数据库中的旧版本修订和草稿。有多少WordPress网站所有者不这样做,我总是感到惊讶。

[clickToTweet tweet =“你应该像对待汽车一样对待#WordPress,这意味着检查油脂,调整等等。#webperf”quote =“你应该把WordPress视为汽车,这意味着检查油脂,调整等等。”]

您可以安装免费的WP-Optimize插件并运行优化。正如您在下面所见,在我的案例中,数据库中有108个修订版。这不是很多,但是前进总是很好,从一个新鲜的板岩开始。注意:我在运行清理后立即删除了插件。

wp-optimize插件

禁用和/或限制WordPress修订

或者您可以通过将以下代码添加到wp-config.php文件来手动完成。在这个例子中,我将它们限制为3。

define('AUTOSAVE_INTERVAL', 300); // seconds
define('WP_POST_REVISIONS', 3);

将代码添加到’ABSPATH’之上非常重要,否则,它将无法正常工作。

限制WordPress修订

您也可以完全禁用修订。

5、轻量级WordPress主题

WordPress主题可以建立或破坏您的网站。有很多臃肿的主题可以让你的网站爬行。当您寻找WordPress主题时,您希望确保从具有良好开发人员和支持信誉良好的公司购买。我在所有WordPress网站上使用GeneratePress;包括我的博客和电子商务网站。

我只是通过改变主题看到了450毫秒的减少,没有别的!感谢GeneratePress的开发人员汤姆。他保持轻量级,并且仍然包含大量功能,因此您可以逐字地构建所需的任何类型的站点。

GeneratePress主题

我真的想提一下,你应该小心在ThemeForest上购买主题和产品。我并不是说ThemeForest的所有开发人员都很糟糕,但不幸的是,很多人只是添加膨胀的功能和眼花缭乱的效果以增加他们主题模板的销售额。

点击下载

6、摆脱你可以不用的插件

下一步是摆脱技术上没有的所有不必要的插件。这是我喜欢使用WordPress的一个原因。有很多不同的方法可以完成任务。如果你选择Shopify或Wix这样的另一个平台,你就会被困在某种程度或者更糟的情况下,你根本无法修复它。

没有你的生活源:imgflip

这是我在自己的网站上删除的插件:

  • Scoll to Top按钮(GeneratePress主题中已包含的滚动到顶部按钮)
  • Simple Custom CSS(已经内置到GeneratePress使用的WordPress定制中)
  • Standout Color Boxes(走CSS路线)
  • Bloom(此插件有太多请求,切换回MTS WP Subscribe Pro插件)
  • Hero Favicon Generator(我使用GeneratePress主题中的钩子从我的CDN加载自己的favicon。您可以查看我的GeneratePress评论中的内容。)
  • TweetDis(最近切换到Social Warfare,其中还包括推文短代码)
  • Crayon Syntax Highlighter 蜡笔语法荧光笔(切换到原生WP代码语法,没有任何插件)
  • Mango Buttons(简单地切换到我制作的CSS按钮,不需要插件)

7、压缩图像

图像压缩(使图像文件更小)不再是可选的。这是你能做的最简单的事情之一!将全分辨率图像上传到网站上,尤其是小型共享网络托管计划上的图像,可以真正减慢网站上的加载时间。如果在不降低图片质量的情况还照样压缩,你绝对会为此感到惊讶。

我使用Imagify WordPress插件使用有损压缩来压缩我的所有图像。我添加到页面或帖子的每个图像都会在后台自动压缩。我不必做任何不同的事情。

8、把我的自定义CSS带到最低限度

以我的旧主题,我不得不修复很多东西,让它按照我想要的方式工作。我的自定义CSS文件有247行代码。切换主题后我浏览了每一行,并设法将其降低到88行代码。😁这只是为了向您展示GeneratePress主题的编码效果。

自定义CSS

新的CSS按钮
如果你很好奇,这是我正在使用的新CSS按钮。

@media only screen and (max-width:480px)
.hide_on_mobile {
display: none !important;}
}

.widget .title {
  font-weight: normal !important;}

本站自定义按钮样式

.btn {
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 4px;
font-family: 'Microsoft YaHei';
text-align: center;
color: #ffffff !important;
font-size: 16px;
background: #24a3e2;
padding: 8px 18px 8px 18px;
text-decoration: none;
border-bottom: 2px solid #3881a5 !important;
position: relative;
display: inline-block; }
.btn:hover {
background: #39abe5;
text-decoration: none;
}

这是HTML代码。您甚至可以更进一步创建自己的短代码。但通过这种方式,我从按钮插件中删除了一个HTTP请求。

"< a class=“btn” target="_blank" rel=“noopener”>button text</a >"

9、更改Web字体

我最近对网络字体性能进行了大量研究。我放弃了Adobe Typekit服务。这样做我看到额外减少了300毫秒。Typekit添加了2个外部HTTP请求,它还对所有字体格式进行了base64编码。如果您不熟悉字体,则不再需要提供所有字体格式,您只需要WOFF和WOFF2(如果要进行额外压缩)。

在性能更好的字体方面,您有几个选择。

选项1:使用Google字体

谷歌字体非常实用的一个非常具体的原因,它们可能已经缓存在访问者的计算机上。因此,如果某人使用常见的Google字体访问您的网站,则可能无需再次加载。对Google的外部呼叫也比使用Typekit这样的第三方快得多。当Typekit发生故障时,它会偶尔发生一次,这似乎是互联网中断的一半。

font tweet

选项2:在您的CDN上托管Google字体/自定义字体

我选择了这个选项。我使用的是我真正喜欢的自定义字体,Google无法提供。然而,问题在于我将我的CDN以及所有其他媒体托管在我的CDN上。这样做的一个好处是由于没有对第三方进行DNS查找。

选项3:系统字体堆栈

您的第三个选择是转移到他们所谓的系统字体堆栈。随着更新的操作系统,字体现在看起来比以前好多了。这意味着您可以告诉您网站的访问者使用操作系统字体。这意味着您的WordPress网站上根本没有加载任何字体文件!这是迄今为止最快的选择。

但是你会想要权衡利弊。你想要看起来很花哨的东西还是想要快速的东西?

DNS预取

还建议您预取字体文件。您可以通过将位置添加到WordPress header.php文件来实现此目的(下面的示例)。或者,如果您正在使用Perfmatters插件,则可以在设置中轻松执行此操作。

<1ink rel=“dns-prefetch” href=“//fonts.loli.net/”>

10、WordPress缓存

显然每个人都知道缓存WordPress网站的重要性。有免费的缓存插件,如W3 Total CacheWP Super Cache,但就速度而言,我从未对它们印象深刻。它们的设置也要复杂得多。


建议使用WP Rocket(premium)或Cache Enabler(免费)。或者更好的是,如果您使用Kinsta托管WordPress网站,则会自动在服务器级别为您执行缓存!所以不需要麻烦使用缓存插件。😎

但是,如果您使用共享主机,则需要一个缓存插件。

WordPress缓存启动器

免费的WordPress缓存启用程序插件由团队在KeyCDN创建,KeyCDN是一个全球内容交付网络,专注于加速内容交付。该插件是使用HTTP/2开发的,并且简单易用。设置缓存插件不应该是疯狂复杂或涉及25个以上的步骤。

它是如何工作的?好吧,基本上它会创建静态HTML文件,然后存储在Web服务器的磁盘上。当访问者访问您的网站时,会提供静态HTML文件。由于它是静态的,这可以超快速地交付!为什么?因为它几乎绕过了插件,数据库等。

加速WordPress - 缓存启动器

截至撰写本文时,该插件目前的评分为4.6星,满分5星。人们似乎很喜欢它。以下是一些评论。

简单和有效。爱它!- atomiccherry

喜欢这个轻量级的插件!它甚至支持WebP!安装后看到提速!- tandkb

漂亮而简单的缓存插件,效果很好,甚至支持EWWW Image Optimizer生成的WebP图像。真棒!- nosilver4u

缓存启动器功能

缓存启用程序插件具有以下功能:

  • 将HTML缓存到磁盘
  • 在发布新页面/帖子时自动清除缓存的功能
  • 手动清除功能
  • 显示WordPress仪表板中缓存的总大小
  • 缩小您的HTML和JavaScript
  • 支持WP多站点和自定义帖子类型
  • 能够设置到期指令
  • WebP支持(与Optimus,ShortPixel或EWWW结合使用时)
  • 自WP 4.4以来,通过srcset支持响应式图像
  • Autoptimize一起使用
  • HTTP/2 Focused

仪表板中缓存大小的示例

在WordPress仪表板中,您可以在“概览”窗口小部件中清楚地看到当前缓存中的大小。

缓存大小仪表板

仪表板中缓存大小的示例

您可以直接从WordPress管理栏中清除页面/帖子或清除整个缓存。

清除缓存WordPress仪表板

如何安装Cache Enabler

请按照以下步骤安装免费的WordPress Cache Enabler插件。

第1步

在WordPress仪表板下的“插件”中,单击“添加新”并搜索缓存启用程序。确保通过KeyCDN为作者说明。单击“立即安装”按钮。您也可以直接从WordPress存储库下载它。

搜索缓存启用程序

第2步

激活插件后,您需要启用一些设置。在WordPress仪表板下的“设置”中,单击“缓存启动器”。我建议启用预压缩选项以及WebP支持。您可以使用Optimus Image Optimizer插件,ShortPixel或EWWW来利用此功能。

WebP是谷歌的图像格式,有时可以减少超过70%的图像尺寸!我还建议为HTML和JavaScript启用缓存缩小。注意:如果您有任何问题,可能必须禁用JavaScript缩小并仅使用HTML。例如,Disqus插件在JavaScript缩小时效果不佳。

缓存启用程序设置

第3步(可选)

您可以使用一个高级代码段来绕过WordPress中的PHP。这是一个可选步骤,但您会看到更快的速度提升!我正在使用它来进行下面的速度测试。

缓存启动器速度结果

现在让我们看看速度测试的内容。我在全新安装的WordPress上使用它,并运行了二十六个主题。如果你有一个更大的网站,你可以看到更快的增长!

没有缓存

首先通过Pingdom运行了5次测试,并且没有运行缓存插件。

没有缓存的WordPress的速度

使用Cache Enabler插件

然后通过Pingdom再进行了5次测试,并在启用了免费的Cache Enabler插件的情况下获得了平均值。

已做缓存的WordPress速度

您可以看到Cache Enabler插件将加载时间从537毫秒减少到390毫秒。使用免费插件只需2分钟的设置工作,速度提高了27.37%!不是太寒酸。

正如您所看到的,对于免费插件,WordPress Cache Enabler插件可以为您的网站或博客创造奇迹。它的设置非常简单,你会看到速度急剧增加。

点击下载

11、调整Google Analytics

在过去的公司代理机构工作中,默认情况下我一直在我的Google Analytics帐户中启用广告功能和再营销。但是,在我的博客上我不使用任何数据,所以最好删除它。为什么?因为如果您正在运行这些功能,您实际上会对此文件发出第二个HTTP请求:https://stats.g.doubleclick.net/r/collect?然后,您的主Google Analytics脚本将在响应标头中包含302重定向。

谷歌分析收集

您可通过在Google Analytics帐户中关闭再营销和广告报告功能来解决此问题。

谷歌分析数据收集

您还可通过将以下代码添加到Google Analytics脚本来停用这些功能。

ga('set', 'displayFeaturesTask', null);

谷歌分析没有重定向

在本地托管Google Analytics还可以通过减少额外的DNS查找并解决其脚本中的“利用浏览器缓存”问题来帮助加快您的网站速度。它还允许您从自己的CDN加载分析脚本,这可以帮助您利用单个HTTP/2连接

注意:这不是谷歌正式支持的,但我们多年来一直这样做没有任何问题。这可以通过我们的Perfmatters插件轻松完成(如下所示)。

在Perfmatters中启用本地分析

12、加快WordPress测试结果

在我完成上述所有操作后,这是我的速度测试结果。测试运行5次并取平均值。Woorkup的最终加载时间不到500毫秒。

优化后的Pingdom速度测试
优化后的速度测试(来源:Pingdom
不是太寒酸吧?我设法将HTTP请求从90减少到36。我将页面大小从939.9 KB减少到291.5 KB。我将加载时间从1.52s减少到495ms!

随意点击这个网站,看看它加载的速度有多快。

13、获得Web性能审计

还需要额外的提升吗?如果您对速度仍不满意,我总是建议您聘请专家并在您的网站上完成审核。

目前,强烈推荐可编码专家迈克·安德列亚森进行Web性能审核和HTTPS转换。以下是迈克的Web性能优化之前和之后客户端站点的示例。

Mike的网站性能审核

14、额外加速WordPress提示

以下是我正在做的其他一些您可能想要查看的内容。

从我的CDN加载我的gravatars
我使用Perfmatters插件通过心率线来修复admin-ajax.php的缓慢
我已禁用此网站上的帖子修订版。
但实际上我对结果仍不满意。在性能方面,我是非常强迫症,所以我将一直在优化。这是一项永无止境的工作。请务必为此帖添加书签,因为我会不断更新它。希望我以上关于如何加速WordPress的经验将为您留意。

文章来源:Speed Up WordPress – Your Complete Optimization Guide

  • 文明上网,礼貌发言!可使用HTML代码/超链接。