博客

  • 使用LiteSpeed缓存插件将WordPress优化到极致

    使用LiteSpeed缓存插件将WordPress优化到极致

    页面速度优化应该是每个网站所有者的首要任务,因为它直接影响WordPress SEO。此外,网站加载的时间越长,跳出率就越高。这可能会阻止您产生转化并为您的网站带来流量。

    使用正确的工具和配置,缓存您的网站可以显着提高其性能。因此,我们将向您展示如何使用LiteSpeed Technologies的最佳缓存插件优化您的页面得分。

    我们测试了LiteSpeed Cache插件并配置了三个不同网站的设置。本文将引导您完成我们为获得最佳结果而应用的配置。

    在深入了解设置之前,让我们先简要概述一下LiteSpeed缓存插件。

    什么是LiteSpeed?

    LiteSpeed是旨在加速网站性能的网络服务器软件。LiteSpeed服务器采用事件驱动架构构建,可以用更少的进程处理更高的流量,从而减少资源使用并提高页面速度。

    LiteSpeed服务器还具有内置的Apache替代品,支持.htaccess,让用户可以从Apache切换并使用现有配置。此外,它还可以与几个流行的主机控制面板一起使用,例如WHM、DirectAdmin和Plesk。

    有两个版本的LiteSpeed Web服务器可用:

    • LiteSpeed Enterprise – 适用于托管多个网站或共享托管环境。它会自动检测对.htaccess文件的更改并调整设置,而无需重新启动服务器。
    • OpenLiteSpeed – 具有所有基本功能的LiteSpeed Enterprise的开源版本。每次加载新的.htaccess文件时都需要重新启动。因此,此Web服务器通常用于单个网站。

    优化页面速度和性能时,LiteSpeed使用称为LiteSpeed Cache的内置服务器级缓存。

    LiteSpeed Cache是LiteSpeed Technologies的产品,可优化网页上的动态内容。它具有高级缓存功能和优化功能。LiteSpeed Cache也可作为插件在包括WordPress在内的多个平台上使用。

    LiteSpeed Cache for WordPress (LSCWP) 通过存储网站内容的副本以供将来请求使用。结果,服务器必须处理更少的请求并且可以更快地显示网页。

    请注意,需要服务器缓存的功能仅在LiteSpeed服务器中可用。另一方面,优化功能可用于任何Web服务器,包括OpenLiteSpeed、Nginx和Apache。这些功能包括图像优化、CDN(内容交付网络)集成和CSS/JS修改。

    在我们继续之前,让我们看看在设置LiteSpeed Cache之前,Google PageSpeed Insights给测试网站的移动版和桌面版打分:

    优化前Google PageSpeed Insights评分

    为WordPress配置LiteSpeed Cache 后,两个版本都获得了满分:

    优化后Google PageSpeed Insights评分

    OpenLiteSpeed、LiteSpeed Web服务器、Nginx和Apache上的LiteSpeed缓存插件性能

    尽管LSCache插件可以在LiteSpeed环境之外工作,但它的功能会因您使用的Web服务器而异。因此,结果和过程测量也将有所不同。

    为此,我们对LiteSpeed Web Server、Nginx和Apache进行了大小规模的压力测试。我们将向您展示其性能的三个指标——完全处理时间、每秒请求数和每秒兆字节数。

    重要的!压力测试是在立陶宛在位于美国的服务器上完成的。

    LiteSpeed缓存插件性能报告

    如上所示,LiteSpeed网络服务器得分最高。将LiteSpeed网络服务器与WordPress的LiteSpeed Cache配对肯定会为您的网站提供最佳性能。

    安装LiteSpeed缓存插件

    请按照以下说明安装 LiteSpeed Cache for WordPress。

    1. 登录到您的WordPress管理仪表板并转到插件部分。
    2. 搜索LiteSpeed Cache,单击立即安装启用
    3. 刷新页面 – LiteSpeed缓存部分将在您的仪表板上。

    安装WordPress插件后,您必须对其进行配置。阅读以下部分,找出最适合您的WordPress网站的LiteSpeed缓存设置。

    LiteSpeed Cache for WordPress插件的最佳设置

    我们已经在三个由共享主机提供支持的网站上测试了这些LiteSpeed缓存设置——一个简单的博客网站、一个电子商务网站和一个在线投资组合。

    重要的!在GTmetrix上测试性能时,无论您使用的是什么缓存插件,都要执行几次,因为缓存可能不会在第一次被命中或加载。此外,请务必在测试任何新设置之前清除缓存。

    我们还将包含每个设置的详细说明,以帮助您决定是否需要对其进行调整。

    让我们从完成基本设置开始。

    1. 完成基本设置

    在我们进入完成基本设置的步骤之前,让我们比较三个网站的性能测试结果。

    LiteSpeed缓存与无缓存性能对比报告

    上图显示了激活和配置LiteSpeed Cache插件后网站性能的显着提升。

    出于这个原因,我们将引导您了解LiteSpeed Cache插件的特性和功能,以及应用的最佳设置 – 从“常规”页面开始。

    此页面上的第一个选项是Automatically upgrade。顾名思义,将此按钮切换到On会提示系统安装最新版本的LSCache插件。

    LSCache插件自动更新

    接下来,有一个字段可以添加您的域密钥,也称为API密钥。如果您想使用QUIC.cloud功能和服务,这一点很重要。只需单击请求域密钥按钮。

    QUIC.cloud域名key

    我们将在下一节中详细讨论如何设置QUIC.cloud。现在,转到下一部分,您将看到访Guest Mode

    QUIC.cloud访客模式

    此选项为客人的首次请求提供自动可缓存登录页面。当您启用访客模式时,服务器将不必获取访问者的信息,而是为他们提供默认的缓存页面。因此,页面加载时间会更短。

    提供缓存页面后,服务器将进行Ajax调用以获取访问者请求的正确版本的网页。要启用访客模式,只需将其打开即可。

    要优化访客模式,请使用Guest Optimization选项。

    LS访客优化开关

    启用此设置后,服务器不仅会提供默认的缓存页面,还会执行图像和页面优化,即使这些功能被禁用。

    但是,访客模式优化可能会占用您的一些 WordPress 网站资源,因此最好在激活此设置之前咨询您的托管服务提供商。

    在下方,您的站点IP地址有一个服务器IP字段。包含您的IP地址将允许爬虫直接从您的服务器检索资源,从而提高您网站的性能。

    服务器IP地址信息

    有关您网站的IP地址的信息,请联系您的托管服务提供商。

    再往下,有通知设置。通过启用它,您将获得有关LSCache插件开发的最新信息,包括促销和新版本。

    LSCache插件通知开关

    请务必在配置设置后保存更改。

    2.调整缓存设置

    LiteSpeed缓存设置页面包括主要适用于LiteSpeed Web服务器或QUIC.cloud CDN的功能。LiteSpeed缓存设置页面中有多个功能 – 本节将介绍所有缓存功能,以帮助您选择最佳方法。

    • 启用缓存(Enable Cache) – ON。打开此选项将触发系统自动缓存您的WordPress站点。虽然关闭此功能不会影响您网站的内容,但所有缓存的文件都将被清除。我们建议保留默认设置以获得更好的加载时间。

    LS缓存开关

    • 缓存登录用户(Cache Logged-in Users) – OFF。此设置会自动缓存已登录用户的网页。但是,启用此设置会占用服务器资源。除非您运行会员网站,否则最好禁用此选项。

    缓存登录用户开关

    • 缓存评论者(Cache Commenters) – OFF。此函数的输出取决于您的评论审核设置。如果同时启用缓存评论者和缓存审核设置,用户将不会立即看到他们的评论。相反,如果缓存评论功能被禁用,用户将看到他们的待处理评论。

    缓存评论者开关

    • 缓存REST API(Cache REST API) – ON。这使您能够缓存来自WordPress REST API调用的请求。这些调用通常由与WordPress集成的第三方Web应用程序进行,包括主题、插件和区块编辑器

    缓存REST API开关

    • 缓存登录页面(Cache Login Page) – ON。它提供登录页面的缓存版本。最好启用此功能,因为每次访问者登陆您的页面时,它都会使您的 WordPress 网站加载速度更快。

    缓存登录页面开关

    • 缓存favicon.ico – ON。保持启用此功能将有助于避免不必要的PHP调用并使服务器响应更快。否则,系统将查找favicon.ico文件并强制WordPress PHP后端运行,从而降低您的WordPress网站速度。

    缓存favicon.ico

    • 缓存PHP资源 – ON。该函数缓存静态元素,包括WordPress主题生成的CSS和JS文件。保持启用设置以加快性能并避免不必要的PHP脚本。

    缓存PHP资源开关

    • 缓存移动 – ON。它允许您在桌面和移动设备上提供不同的缓存内容。除非您的WordPres网站有AMP(加速移动页面)版本,否则我们建议您关闭此功能。

    针对移动端缓存开关

    • 移动用户代理列表。此设置仅在您打开缓存移动功能时可用。您可以以重写规则友好的格式添加移动用户代理列表。例如,每个用户代理可以写在一行上。

    移动用户代理列表

    • 私有缓存URI。包含将被私有缓存的路径。但是,此功能类似于也处理私有缓存URI的缓存登录用户选项。除非您想私下缓存与用户无关的特定页面,否则请将该字段留空。

    私有缓存URI

    • 强制缓存URI。无论任何不可缓存的设置如何,系统都会强制缓存写入提供的字段中的每个路径。通常,您不必担心此功能,因为您不需要为大多数页面强制缓存。

    强制缓存URI

    • 强制公共缓存URI。强制将特定内容类型缓存为公共,无论其设置如何。

    强制公共缓存URI

    • 删除查询字符串。忽略字段中添加的任何查询字符串并加快网站加载时间。默认设置已经列出了一些最常生成的字符串。但是,如有必要,您始终可以添加更多查询字符串。

    删除查询字符串

    总而言之,LSCache插件应用了适用于大多数WordPress网站的默认设置。也就是说,我们建议根据您的需要调整它们。

    除了LiteSpeed缓存设置页面,让我们简要概述其他可用部分及其主要功能:

    • TTL(生存时间) ——此函数控制特定内容类型在缓存中存储多长时间。默认设置应该可以正常工作,但您可以根据需要减少或增加数字。
    • 清除– 提供从缓存中删除某些内容类型的所有设置。我们建议在所有升级上启用清除,以允许系统在更新可用时清除过时的缓存。如果您有足够的资源,请启用服务器陈旧以获得更好的性能。
    • 排除– 帮助指定要从缓存中排除的内容类型。需要填写各种字段,包括站点URI和查询字符串。相应地填写字符串,系统将阻止它们被缓存。
    • ESI(Edge Side Includes) ——将网站页面的特定部分分成片段。您可以选择将这些部分存储在公共或私人缓存中。一旦启用,系统将在将页面提供给浏览器之前重新组合页面。
    • 对象– 默认情况下禁用对象缓存功能。但是,启用此功能将提示服务器更快地检索和显示频繁的数据库查询。由于启用此功能涉及技术参数,请先咨询您的托管服务提供商。
    • 浏览器——启用浏览器缓存允许系统自动将您的WordPress站点的动态内容存储在用户的浏览器缓存中。服务器将处理更少的浏览器请求并更有效地为页面提供服务。
    • 高级– 此选项卡上的设置是为高级用户指定的。在这里,您可以启用HTTP/HTTPS功能以避免与登录cookie发生冲突。此外,当访问者将鼠标悬停在网页上时,即时点击功能可以在后台加载网页。

    3.优化页面和图像优化选项

    LiteSpeed Cache插件包括WordPress网站上动态内容的优化工具,包括图像和网页。花时间配置这些设置很重要,因为它们会影响您网站的SEO。

    本节将引导您了解每个优化选项卡上的每个功能和设置。

    图像优化

    每当访问者访问您的WordPress网站时,浏览器都会请求资源并下载您的图像,然后再显示它们。因此,浏览器将花费更长的时间来加载、调整大小和渲染未优化的图像。

    幸运的是,LiteSpeed Cache插件可以通过调整图像大小来单独或批量优化图像。

    警告!使用LiteSpeed Cache插件时不要使用其他优化插件,因为它可能会触发系统和处理错误。

    进入图像优化页面后,您将看到Image Optimization Summary选项卡。此选项卡监控多个指标,例如尺寸缩小和从您的网站提取的图像总量。

    使用LiteSpeed缓存插件将WordPress优化到极致-1

    此外,您还可以使用其他一些功能,例如:

    • 收集图像数据(Gather Image Data)– 上传新图片后可用。完成后,将出现“Send Optimization Request”按钮,使您能够将图像发送到LiteSpeed云服务器。重要的!此功能仅在您添加域密钥并激活QUIC.Cloud CDN后可用。
    • 拉取图像(Pull Images)——将优化后的图像从云端拉回您的WordPress站点。
    • 清理未完成的数据(Clean Up Unfinished Data)– 擦除未完成的进程并在优化过程卡住时重新启动它们。
    • 计算备份磁盘空间(Calculate Backups Disk Space)– 计算备份文件的可用磁盘空间。
    • 删除原始映像备份(Remove Original Image Backups)– 删除原始映像的备份以释放磁盘空间。我们建议在选择此功能之前将备份下载到您的本地计算机。删除所有备份后,您将无法恢复优化设置。
    • 重新扫描新缩略图(Rescan New Thumbnails)– 扫描您网站上新添加的图像并向系统发送优化请求。
    • 使用原始文件和使用优化文件(Use Original Files & Use Optimized Files)– 提供在您网站上的未优化和优化图像之间切换的选项。
    • 销毁所有优化数据(Destroy All Optimization Data)– 删除所有数据并将所有设置恢复为原始值。

    现在,让我们继续下一个选项卡并为您的 WordPress 网站应用最佳优化设置。只需单击Image Optimization Settings,您将看到多个需要调整的功能:

    • 自动请求Cron – ON。每当上传新图像时,此功能会自动通过WordPress cron作业发送优化请求。
    • Auto Pull Cron – ON。它与前面的功能一起工作。因此,您应该启用这两个功能。否则,您将需要使用Pull Images按钮发送每个新上传的图像。
    • 优化原始图像 – ON。您应该始终打开此功能,因为它会优化.png.jpg图像并生成备份文件。仅当您不想优化图像时才禁用它。
    • 删除原始备份 – OFF。请记住,此功能是不可逆的。启用它将删除所有备份,防止您恢复任何优化设置。
    • 无损优化 – ON。这将使用无损压缩优化您的图像。
    • 保留EXIF/XMP数据 – OFF。默认情况下启用此设置。但是,保留EXIF/XMP数据可能会增加优化图像的大小。因此,最好禁用此功能。
    • 创建WebP版本 – ON。打开此功能将生成图像的.webp文件。这会导致更大的尺寸减少高达30%,从而加快您的网站加载时间。
    • 图像WebP替换 – ON。如果您启用了之前的设置,您还应该打开此选项,因为它会将.jpg.png图像替换为.webp文件。
    • 要替换的WebP属性。控制要替换为.webp的图像格式。只需在框内每行输入一个图像属性。
    • 用于额外srcset的WebP – ON。它可以将带有srcset元素的自定义代码作为.webp版本提供服务。
    • WordPress图像质量控制。默认图像质量应该可以正常工作。您可以根据需要调整设置,但请记住将值保持在100以下。

    页面优化

    设置图像优化设置后,下一步就是调整页面优化功能。如果不这样做,可能会导致加载时间变慢和页面得分变差。

    幸运的是,在页面优化方面,LiteSpeed Cache插件提供了多种选项来提高您的WordPress网站性能。此页面包含优化HTML、CSS和JS文件的最重要设置。

    LS页面优化

    页面优化页面有几个部分——我们将概述每个部分及其功能。

    CSS设置

    • CSS最小化 – ON。此设置会去除不必要的元素,例如CSS文件中的多余空格和换行符。
    • CSS合并 – OFF。启用此选项将提示系统将所有单独的CSS文件合并到一个CSS文件中。但是,除非您有额外的空间,否则我们建议禁用它,因为此功能会占用资源。
    • 生成UCSS – OFF。此设置与CSS合并功能一起使用。因此,如果您决定禁用之前的功能,您还应该关闭此设置。
    • UCSS内联 – OFF。它通过将UCSS与HTML内联存储来减少额外的CSS文件加载。此功能还可以与CSS合并协同工作,因此只有在您打开之前的设置后才能启用它。此外,启用此功能将绕过Load CSS Asynchronously选项。
    • CSS结合外部和内联 – OFF。此选项有助于将外部CSS文件与带有HTML内联元素的文件结合起来。为避免错误,请使用CSS合并启用此选项。
    • 异步加载CSS – OFF。启用此选项可让您的CSS和HTML元素同时加载。但是,它们可能会在没有格式化的情况下加载。这可能会导致布局偏移或无样式内容 (FOUC) 的闪现。
    • CCSS每个URL – OFF。关闭此功能将为每个文章类型而不是单个页面生成关键CSS。这将节省CCSS配额和磁盘空间。
    • 内联CSS异步库 – ON。此选项通过内联异步CSS库来避免渲染阻塞。
    • 字体显示优化。保留默认值,因为修改此设置可能会导致FOUC问题。

    JS设置

    • JS最小化– ON。它删除了用于JS优化的不必要脚本。
    • JS合并 – OFF。这会将所有单独的JS文件编译成一个文件。
    • JS结合外部和内联 – OFF。此功能的工作方式类似于合并的CSS外部和内联选项。仅当您还打开了先前的功能时才启用此功能。
    • 加载JS延迟 – 取决于. 在调整此选项之前,请进行一些测试,因为结果可能会有所不同。如果选择Deferred,系统将在HTML之后立即加载JS。同时,延迟选项仅在系统检测到用户活动时才会启动。

    HTML设置

    • HTML缩小 – ON。删除HTML代码中不必要的字符。
    • DNS预取。在访问者请求之前对列出的域进行DNS解析,从而减少页面加载时间。这对于加载外部链接很有用,例如AdSense或Facebook。
    • DNS预取控制 – ON。如果您在之前的设置中添加链接,此功能将自动预取列出的DNS以及您的帖子和页面中的所有URL,包括CSS、JavaScript和图像。
    • HTML延迟加载选择器。通过在提供的字段中每行添加一个来指定要延迟加载的类或ID。
    • 删除查询字符串 – OFF。此选项通常不会直接影响您网站的性能,因此将其关闭应该没问题。
    • 异步加载Google字体 – OFF。它异步加载Google字体,同时保持其他CSS元素不变。但是,我们建议禁用此选项,因为大多数Google字体已经缓存在访问者的浏览器中。
    • 删除谷歌字体 – ON。仅当您在本地存储字体并且不希望在您的WordPress站点上加载任何第三方字体时才启用此设置。
    • 删除WordPress表情符号 – ON。激活此功能将阻止系统加载WordPress.org表情符号并改为加载默认表情符号。
    • 删除Noscript标签 – OFF。保持此选项打开有助于确保与所有浏览器的兼容性,包括旧版本。

    媒体设置

    • 延迟加载图像 – ON。此选项允许系统延迟加载您网站上的图像。虽然这样做可以加快加载时间,但可能会影响用户体验。
    • 基本图像占位符。当您启用延迟加载时,将显示一个灰色图像占位符。但是,您也可以通过定义图像的base64并将其添加到字段来自定义它。使用在线工具找出图像的base64。
    • 响应式占位符 – ON。此选项使您的图像占位符能够适应图像的尺寸,从而减少布局重组。
    • 响应式占位符SVG。指定要用作占位符图像的SVG文件。系统会自动将其转换为base64占位符。
    • 响应占位符颜色。默认值工作正常。或者,通过移动颜色选择器自定义颜色。
    • LQIP云生成器 – OFF。启用此功能将生成一个低质量的图像占位符,在加载时显示图像的模糊版本。如果您喜欢使用纯色作为占位符,请关闭此设置。
    • LQIP质量。定义LQIP的质量。取值范围为1到20,数值越高,分辨率越高。但是,将其设置为较大的值可能会增加加载时间。
    • LQIP最小尺寸。LQIP只会出现在与设置中指定的尺寸相同的图像上。它不会加载到具有较小高度和宽度的图像上。
    • 在后台生成LQIP – ON。开启此选项允许系统通过基于cron的队列在后台加载LQIP。将其关闭可能会增加您的加载时间。
    • 延迟加载帧 – ON。它的工作原理类似于延迟加载图像。此功能有助于延迟加载帧,例如地图和视频。
    • 添加缺少的尺寸 – ON。为您的图像设置定义的宽度和高度,并帮助LiteSpeed Cache插件自动添加缺少的图像尺寸。此设置仅在图像延迟加载打开时有效。
    • 内联延迟加载图像库 – ON。启用此功能有助于提高您的页面得分。

    媒体除外

    这些设置将排除某些图像被延迟加载。排除首屏图像(例如徽标和背景图像)可以改善用户体验。这是因为您希望这些元素在页面的其余部分之前加载。

    要从延迟加载中排除媒体,只需相应地在提供的字段中填写信息。例如,按类和父类名称排除图像。

    本土化

    • Gravatar缓存 – ON。这允许系统在本地存储gravatar。这对于有很多带有gravatar的评论的WordPress网站最有效。
    • Gravatar缓存Cron – ON。如果您启用了上一个选项,您还应该启用此选项以通过cron作业刷新gravatar缓存。
    • Gravatar缓存TTL。定义gravatar的缓存时间。默认值应该可以正常工作。但是,您可以自定义此值,只要它高于3600秒即可。

    Tuning

    本节中的所有设置都用于排除特定元素(例如CSS、JS和URL)被缩小和组合。

    通常,除非在最小化或合并CSS/JS后在源代码中发现不寻常的文件,否则您不必过多地调整这些设置。在这种情况下,您可以相应地在提供的字段中列出文件。

    Tuning设置

    完成配置设置后,请务必点击Save Changes

    4.设置QUIC.cloud CDN(可选)

    QUIC.cloud是LiteSpeed Technologies的内容交付网络,提供动态缓存。该CDN使用世界各地的服务器来缓存网站内容。每当访问者发出请求时,服务器将从最近的服务器位置获取资源。

    将QUIC.cloud CDN与LiteSpeed Cache的缓存功能配对可以大大提高您的页面速度。本节将说明激活此内容交付网络的步骤。

    为此,首先为WordPress设置Cloudflare。这样做可确保以最佳方式缓存您的所有网站内容——QUIC.cloud CDN将缓存所有动态页面,而Cloudflare CDN将处理静态内容。

    在服务器上设置Cloudflare后,下一步就是获取域密钥。转到“General”页面,然后单击“Request Domain Key按钮。

    请求域密钥

    然后,等待系统处理您的请求。

    系统处理您的域名key请求通知

    刷新您的 WordPress 管理页面。该过程完成后,系统将自动填充域密钥。接下来,单击Link to QUIC.cloud按钮。

    链接到QUIC.cloud 

    这将带您进入注册页面。继续相应地填写所有信息。

    QUIC.cloud注册

    如果您还没有QUIC.cloud帐户,请注册一个新帐户。完成后,系统将向注册地址发送一封验证电子邮件。打开电子邮件并单击附加的链接。

    QUIC.cloud激活

    如果您看到上面的消息,则您已成功将您的WordPress网站与QUIC.cloud CDN配对。现在,单击“我的仪表板”按钮返回。

    尽管您已完成注册过程,但您仍需要正确配置DNS设置。为此,请导航到CDN部分并查找QUIC.cloud选项。

    QUIC.cloud CDN开关

    将其打开以启用QUIC.cloud CDN API功能。

    接下来,使用Cloudflare详细信息配置QUIC.cloud。在此之前,请访问您的Cloudflare仪表板以获取全局API密钥。

    API token模板列表

    现在您已经有了信息,只需相应地填写字段即可。

    Cloudflare API详细信息

    完成后,单击Save Changes

    5. 通过CDN获取静态内容(可选)

    通过CDN获取静态内容可以降低您的网络延迟。这是因为CDN将跨全局缓存服务器复制请求最多的资源。每当访问者访问这些资源时,最近的服务器都会提供它们。

    要从CDN获取静态内容,您需要创建一个提供资源的子域,例如- cdn.your-website.com。此子域需要与您的主域位于同一文件夹中。

    此外,确保CDN子域运行良好至关重要。否则,您的静态资源将不会被加载,并且可能会破坏您的网站。

    如果您确定子域工作正常,请为新创建的子域启用Use CDN Mapping选项:

    使用CDN映射

    现在我们已经完成了LiteSpeed Cache插件的配置,让我们看看下面的图表:

    使用LiteSpeed Cache插件不同类型网站表现

    它们展示了三个测试网站在应用适当的LiteSpeed配置设置之前和之后的表现。

    在应用图像和页面优化之前,投资组合网站在PageSpeed移动类别中仅获得45分。优化后,得分飙升至100分。同时,同样的变化将电子商务商店的得分从53分提高到99分。

    在GTMetrix性能方面,博客网站的得分从84提高到100。

    重要的!在为WordPress启用LSCache并应用图像和页面优化后,所有网站(博客、电子商务商店和投资组合网站)都显示出更好的结果。

    LiteSpeed还能做什么?

    配置完所有LiteSpeed Cache for WordPress插件设置后,系统应该可以正常运行。因此,几乎不需要进一步的缓存管理。但是,LiteSpeed提供了更多功能,可以根据需要进行调整。

    以下部分将讨论LiteSpeed的数据库优化、爬虫和工具箱,以帮助您进一步提高网站性能,

    数据库优化

    Database部分提供的功能可帮助您更方便地在WordPress数据库中执行各种任务。这包括通过单击清除旧的帖子修订和删除pingback

    修订和删除pingback

    此外,DB Optimization Settings控制后期修订的数量,以清除和自动化该过程。

    数据库优化设置

    例如,如果您想为每个帖子保存两个较旧的修订,请将Revision Max Number值更改为2。同时,要在特定时期保留旧的帖子修订,请更改Revisions Max Age

    Crawler

    LSCache插件包含一个Crawler功能,可以浏览您网站的后端,搜索过期页面并在此过程中刷新它们。它可以防止访问者看到任何未缓存的页面。

    Crawler定时任务

    此功能默认禁用,需要从服务器端启用 – 您必须咨询您的服务器管理员或托管服务提供商。这是因为在没有足够服务器资源的情况下激活爬虫功能可能会对您网站的性能产生负面影响。

    工具箱

    使用LiteSpeed缓存工具箱部分手动配置您的缓存设置。它提供了更具体的缓存功能,从清除403错误页面到编辑.htaccess文件的路径。

    LiteSpeed缓存工具箱

    尽管Purge选项卡包含简单的功能,但Edit .htaccessHeartbeat等其他选项卡适用于高级用户。因此,最好保留这些设置的默认值或在进行任何更改之前咨询您的网络主机。

    有关更多详细信息,让我们扩展每个部分的功能:

    • 清除。此选项卡列出了不同的内容类型,供您有选择地清除。这些函数对于更改正在缓存的文件特别有用。这样,只有选定的文件会被清除,不会影响您的其余内容。
    • 导入/导出。包括用于导出或导入各种LiteSpeed配置的工具。如果您正在试验您的站点并希望稍后恢复以前的配置,这些工具会派上用场。此外,您还可以将站点配置传输到本地文件并在另一个网站上使用。
    • 查看 .htaccess。使用此选项卡中的可用工具直接编辑您的.htaccess文件,而无需配置FTP或SSH客户端。请记住,更改.htaccess文件可能会破坏您的网站。如果您不确定,请务必在进行任何更改之前咨询您的网络托管服务商。
    • 心跳。WordPress Heartbeat API使您的浏览器能够使用AJAX调用与服务器通信。此功能允许您管理服务器负载。但是,在调整WordPress心跳间隔时要小心,因为它会占用大量CPU资源。
    • 报告。如果您在使用LiteSpeed Cache插件时遇到问题,您可以通过按此选项卡中的发送到LiteSpeed按钮来发送报告。然后,系统会将您的环境报告副本发送给LiteSpeed团队。
    • 调试设置。如果您想禁用LiteSpeed Cache插件来调试您的网站,请相应地使用此选项卡中提供的工具。

    结论

    Web缓存是提高网站性能的最有效和最有效的方法之一。如果实施得当,它可以加快加载时间并减少服务器负载。设置Web缓存的最简单方法是安装缓存插件。

    LiteSpeed Cache是具有高级缓存技术的最佳WordPress插件之一。此外,与 LiteSpeed 服务器搭配使用时,其服务器级页面缓存可以有效提升性能。

    在本文中,我们解释了为WordPress配置LiteSpeed Cache的最佳设置。尽管应用最佳设置会给您带来优化的性能,但如果您觉得这样做不自在,则无需调整默认设置。

    我们希望本文能帮助您为WordPress配置LiteSpeed Cache并充分利用它。

  • 如何优化WordPress网站的关键渲染路径

    如何优化WordPress网站的关键渲染路径

    关键渲染路径是浏览器首先在屏幕上渲染页面所执行的一系列任务,即下载、处理并将HTML、CSS和JavaScript代码转换为实际像素并将它们绘制在屏幕上。

    关键渲染路径优化是最小化浏览器执行序列的每个步骤所花费的时间的过程,优先显示与当前用户操作相关的内容。

    此过程的大部分与无需向下滚动浏览器窗口即可看到的页面部分有关。该部分也称为“折叠上方(Above the Fold)”。为了更好的可用性,应该尽快渲染ATF,这可以通过至少减少网络往返次数来实现。渲染ATF所需的资源被认为是关键的,优化Above the Fold意味着将关键资源对首页渲染时间的影响降至最低。

    在这篇文章中,我们将介绍关键渲染路径优化序列。

    • 首先,我将概述浏览器呈现页面内容的任务。
    • 接下来,我将剖析我们可以执行的最相关的操作来优化关键渲染路径。
    • 最后,我将列出一些有用(且流行)的WordPress优化插件。

    关键渲染路径序列

    以下是浏览器为呈现页面而执行的一系列步骤:

    • 首先,浏览器下载并解析HTML标记并构建DOM
    • 然后它下载并处理CSS标记并构建CSS对象模型
    • 它在渲染树中结合了渲染页面所需的DOM和CSSOM节点,渲染树是所有可见节点的树形结构
    • 它计算页面上每个对象的尺寸和位置
    • 最后,它在屏幕上绘制像素

    DOM

    正如Google的关键渲染路径优化指南中所解释的那样,浏览器按四步顺序构建文档对象模型:

    • 首先,浏览器读取行字节并将它们转换为单个字符。
    • 然后它将尖括号内的字符串转换为标记。
    • 这些标记被转换为节点对象。
    • 节点对象以树状数据结构链接,其中包含HTML内容、属性和节点之间的关系。这个结构就是文档对象模型

    这里需要注意的重要一点是浏览器是逐步构建DOM的。这允许我们通过创建高效的DOM结构来加速页面的渲染。

    DOM结构

    DOM结构

    CSSOM

    当解析器遇到一个引用外部CSS样式表的标签link时,它会阻止解析并发出对该资源的请求。收到CSS文件后,浏览器开始构建CSS节点的树形数据结构。

    • 浏览器读取 .css 文件的行字节并将它们转换为单个字符
    • 它将大括号内的字符串转换为标记
    • 这些标记被转换为节点对象
    • 节点对象以树状数据结构链接,其中包含每个节点的CSS属性以及节点之间的关系。这种结构就是CSS对象模型CSSOM )。

    与DOM构建不同,CSSOM构建不是增量的。浏览器不能使用样式表的一部分,因为样式可以在同一个样式表中进行细化和重新声明。出于这个原因,浏览器会阻塞渲染过程,直到它接收并解析所有CSS。这意味着CSS是渲染阻塞的

    CSSOM结构

    CSSOM结构

    渲染树

    浏览器将DOM和CSSOM组合到渲染树中,最终的树结构包含用于将页面渲染到屏幕的所有节点和属性。

    渲染树仅包含渲染页面所需的节点。结果,忽略了不可见的节点。

    浏览器使用渲染树计算节点尺寸和位置作为绘画过程的输入。

    渲染树结构

    渲染树结构

    布局和绘制

    在布局阶段,浏览器计算渲染树每个节点的尺寸和位置。浏览器从根开始遍历渲染树,并在此阶段生成一个盒子模型。该信息最终用于将渲染树的每个节点转换为屏幕上的实际像素。

    关键渲染路径优化

    运行整个过程所需的时间是可变的。这取决于文档大小、请求数量、应用的样式、用户设备等。最相关的Google建议之一是优先考虑可见内容以尽可能快地呈现“首屏”,并提供两个主要规则跟随:

    • 构建HTML以首先加载关键的首屏内容
    • 减少HTML、CSS和JS资源使用的数据量

    正如Google的PageSpeed指南中所解释的那样,如果渲染ATF所需的数据量超过了初始拥塞窗口 (14.6kb),则需要在服务器和浏览器之间进行额外的网络往返。在具有高延迟的移动网络上,这将显着延迟页面加载(阅读有关延迟的更多信息)。浏览器以增量方式构建DOM,允许我们通过构建HTML以首先加载首屏并延迟页面的其余部分来减少渲染ATF所需的时间。

    折叠上方的内容因用户设备而异

    折叠上方的内容因用户设备而异

    但是优化并不会随着构建有效的DOM结构而结束。相反,它是一个涉及整个关键渲染路径序列的改进和测量过程。

    让我们深入研究。

    最小化资源维度

    我们可以通过压缩、压缩和缓存HTML、CSS和JavaScript资源来减少浏览器要下载的数据量:

    • 最小化是从源代码中删除不必要的字符(如注释和空格)的过程。这些字符在开发中很有帮助,但它们对于渲染页面没有用。
    • 压缩是Web服务器和客户端减小传输文件大小以提高速度和带宽利用率的能力
    • 缓存:每个浏览器都带有一个HTTP缓存的实现。我们需要做的是确保每个服务器响应都提供正确的HTTP标头,以指示浏览器何时以及应缓存请求的资源多长时间

    优化CSS

    现在我们知道浏览器必须等到它获取并处理CSS代码才能呈现页面(CSS是render-blocking)。但并不是所有的CSS资源都是渲染阻塞的

    CSS可以限定在特定条件下,我们可以使用媒体类型和媒体查询对其进行优化。如果您在屏幕上查看网页,浏览器将发送打印媒体类型请求,但不会阻止此资源的页面呈现。获取以下link标签:

    <link href=“style.css” />
    <link href=”style.css” />
    <link href="style.css" />

    此标记的引用样式表适用于任何条件,独立于当前媒体类型、屏幕分辨率、设备方向等。这意味着CSS资源始终是渲染阻塞的。

    幸运的是,我们可以在特定条件下发送对CSS资源的请求。我们可以将打印样式移动到一个单独的文件中,并使用media属性告诉浏览器指定的样式表只应在打印页面时加载,并且不需要阻塞屏幕上的呈现:

    <link href=“print.css” media=“print” />
    <link href=”print.css” media=”print” />
    <link href="print.css" media="print" />

    浏览器仍会下载print.css样式表,但不会阻止呈现。此外,浏览器必须为主要的CSS文件下载更少的数据,这将有助于我们加快下载速度。我们可以在link属性上指定任何媒体查询,因此我们可以将CSS拆分为多个文件并有条件地加载它们:

    <link href=“style.css” media=“screen” />
    <link href=“portrait.css” media=“orientation:portrait” />
    <link href=“widescreen.css” media=“(min-width: 42rem)” />
    <link href=”style.css” media=”screen” />
    <link href=”portrait.css” media=”orientation:portrait” />
    <link href=”widescreen.css” media=”(min-width: 42rem)” />
    <link href="style.css" media="screen" />
    <link href="portrait.css" media="orientation:portrait" />
    <link href="widescreen.css" media="(min-width: 42rem)" />

    确保您的样式实际上是呈现页面所必需的。您可以将适当的值添加到媒体标签属性并取消阻止呈现(如果不是)。

    媒体类型和查询可以帮助我们加快页面渲染,但我们可以做的更多。

    • 最小化CSS:空白和注释只能帮助我们阅读CSS声明。通过从样式表中删除注释和空格,我们可以显着减少CSS文件的字节数。
    • 合并多个CSS文件:这将减少HTTP请求的数量。此操作在移动连接中非常重要,其中性能受到高延迟的影响(阅读更多关于延迟的内容)。
    • 内联关键CSS:某些样式很关键,因为它们需要呈现页面的首屏。最好始终将内联关键样式直接考虑到HTML标记中,以避免额外的HTTP请求。但是避免内联大型CSS文件,因为这可能需要额外的往返来呈现首屏,从而导致PageSpeed警告。

    加快布局和渲染过程

    浏览器布局文档所花费的时间取决于要布局的DOM元素的数量以及这些布局的复杂性。

    • 如果你有很多DOM元素,浏览器可能需要很长时间来计算它们的位置和尺寸:尽可能避免布局。
    • 更喜欢新的Flexbox模型,因为它比旧的Flexbox和浮动布局更快。
    • 避免使用JavaScript强制同步布局。

    计算元素大小和位置需要时间并降低性能。使DOM尽可能简单并避免使用JavaScript来预测布局过程将有助于浏览器加速页面呈现(阅读更多关于布局优化的内容)。

    与Layout紧密相连的是Paint过程,这可能是关键渲染路径序列中最耗时的阶段。每当您更改元素或任何非几何属性的布局时,浏览器都会触发绘制事件。在这个阶段使事情尽可能简单可以帮助浏览器加快绘画过程。例如,需要计算的box-shadow属性比纯边框颜色需要更长的时间来绘制。

    Chrome DevTools允许识别正在绘制的页面部分

    Chrome DevTools允许识别正在绘制的页面部分

    优化页面绘制过程可能并不容易,您应该使用浏览器的开发工具来测量浏览器触发每个绘制事件所需的时间。您可以在Google的渲染性能指南中阅读有关此主题的更多信息。

    使JavaScript解除阻塞

    当浏览器遇到脚本标签时,它必须停止解析HTML代码。内联脚本在文档中的确切位置执行并阻止DOM构建,直到JS引擎完成运行。换句话说,内联JavaScript会显着延迟页面的初始呈现。但是JavaScript也允许操作CSS属性,因此浏览器必须暂停脚本执行,直到它完成下载和构建CSSOM。这意味着JavaScript是解析器阻塞的。

    在外部JS文件的情况下,解析器还必须等到从缓存或远程服务器获取资源,这可能会大大减慢第一页渲染的时间。话虽如此,我们可以做些什么来最小化浏览器加载和执行JavaScript所花费的时间呢?

    • 异步加载JavaScriptscript标签的布尔async属性指示浏览器异步执行脚本,如果可能,不阻塞DOM构造。浏览器发送脚本的HTTP请求并继续解析DOM。此外,该脚本不会阻塞CSSOM构建,这意味着它不会阻止关键渲染路径(有关脚本标签属性的更多信息,请参阅MDN 文档)
    • Defer JavaScriptscript标签的布尔defer属性告诉浏览器在解析文档之后、触发事件DOMContentLoaded之前执行脚本。如果src属性不存在,则不得使用此属性,即内联脚本(在Mozilla Hacks上阅读更多信息)
    • 推迟内联 JavaScript:许多脚本不操作DOM或CSSOM,因此没有充分的理由阻塞解析。不幸的是,我们不能为内联脚本使用asyncdefer属性,所以在文档加载后加载它们的唯一方法是将它们移动到底部。优点是内联脚本不需要额外的HTTP请求。但是,在多个页面中使用内联脚本会导致代码冗余。

    总结优化规则

    这是很多东西,不是吗?让我们喘口气,写下到目前为止描述的优化操作列表。

    • 最小化、压缩和缓存HTML、CSS和JavaScript资源。
    • 尽量减少使用渲染阻塞资源(特别是CSS)
      • link标签上使用媒体查询
      • 拆分样式表和内联关键CSS
      • 合并多个CSS 文件
    • 尽量减少使用解析器阻塞资源 (JavaScript)
      • 在脚本标签上使用defer属性
      • 在脚本标签上使用async属性
      • 内联JavaScript并将script标签移动到文档底部

    现在我们知道了关键渲染路径优化的基本概念,我们可以看看一些WordPress流行的优化插件。

    优化WordPress中的关键渲染路径

    WordPress用户可以利用几个插件,这些插件几乎涵盖了优化过程的各个方面。您可以安装一个功能齐全的插件或一次安装多个插件,每个插件都提供特定的优化功能。

    W3 Total Cache

    这个插件几乎涵盖了关键渲染路径优化过程的每个阶段。乍一看,插件配置可能会让人不知所措。不过,一旦您更加熟悉关键渲染路径序列,您将能够利用强大的性能工具集。

    WordPress插件W3 Total Cache

    WordPress插件W3 Total Cache

    以下是一些插件功能的列表:

    • HTML(文章和页面)、CSS和JavaScript缓存在内存、磁盘或CDN中
    • 缓存提要、搜索结果、数据库对象、WordPress对象和片段
    • HTML(文章和页面)缩小
    • JavaScript和CSS缩小
    • 使用asyncdefer进行JavaScript优化
    • 使用缓存控制、未来过期标头和实体标签的浏览器缓存
    • HTTP (gzip)压缩
    • WordPress仪表板上的Google PageSpeed结果

    这些只是W3TC众多功能中的一小部分。在本详细指南中,您可以阅读有关插件的所有功能、设置和选项的更多信息。

    W3 Total Cache-JavaScript最小化设置

    W3 Total Cache-JavaScript最小化设置

    WP Super Cache

    WP Super Cache是另一个流行的网站性能插件。

    WordPress插件-WP Super Cache

    WordPress插件-WP Super Cache

    它具有许多优化功能,但不如以前的W3 Total Cache全面,并且对于新手和中级用户来说可能看起来更实惠。

    WordPress Super Cache测试器

    WordPress Super Cache测试器

    基本上,它提供缓存功能和HTTP压缩,但缺乏资源压缩和JavaScript优化async以及defer属性。然而,超过一百万的活跃安装证明该插件值得一试。

    WP Super Cache中的GZIP选项

    WP Super Cache中的GZIP选项

    Autoptimize

    拥有超过1,000,000次活动安装,Autooptimize是最受欢迎的免费缩小插件之一。

    WordPress插件Autoptimize

    WordPress插件Autoptimize

    它带有一个选项页面,分为几个部分,站点管理员可以在其中分别配置HTML、CSS和JavaScript缩小。

    Autoptimize-HTML优化选项

    Autoptimize-HTML优化选项

    您还可以聚合独立的脚本或样式表并为特定资源设置例外。此外,Autooptimize允许在磁盘或CDN上缓存缩小的资源,并将优化的资产保存为静态文件。要为您的WordPress网站找到最佳设置,您可以在此处遵循我们详细的Autoptimize指南

    Above the Fold Optimization

    这个插件为Above the Fold优化提供了一个全面的工具集。它是专业人士和高级用户在Google PageSpeed测试中获得满分的工具。

    WordPress插件Above the Fold Optimization

    WordPress插件Above the Fold Optimization

    以下是一些最有趣的功能:

    关键的CSS工具:

    • 条件CSS加载
    • 通过文本编辑器进行关键CSS管理
    • Gulp.js关键CSS创建者
    • 关键CSS质量测试

    CSS负载优化:

    • 异步加载CSS
    • 从HTML中提取CSS
    • 外部样式表缓存

    JS加载优化:

    • 异步JS加载
    • localStorage缓存
    • 延迟加载JavaScript
    • 外部脚本缓存

    此外,该插件还支持Google的Progressive Web App和Google Web Font优化。下面几个优化插件,您也可以尝试一下:

    Swift Performance

    Swift Performance是您可能想要查看的另一个插件。这个高级插件可以帮助提高您的性能分数,并且专门开发用于帮助您尝试并实现Google PageSpeed Insights满分。

    WordPress插件Swift Performance

    WordPress插件Swift Performance

    它的一些主要功能包括:

    • 您不仅可以缩小和合并CSS和javascript文件,还可以为您的页面动态创建关键的CSS
    • 智能缓存,以及AJAX和动态请求。
    • 内置无损图像压缩。
    • CDN支持。

    您将在如何移除阻塞渲染的JavaScript和CSS中更深入地了解WordPress优化插件。

    小结

    关键渲染路径优化是一个改进和衡量的过程,需要清楚地了解浏览器执行的每项任务,以将代码转换为像素并在屏幕上渲染页面。您可以在Google的优化指南中了解有关关键渲染路径的更多信息。

    下面文章清单涵盖性能优化的多个方面,对WordPress性能优化有需求的站长可以进一步阅读:

  • 如何在WordPress中设置W3 Total Cache连接CloudFlare CDN?

    设置W3 Total Cache连接CloudFlare CDN

    W3 Total Cache (W3TC) 是您的WordPress网站的顶级缓存插件之一。它将通过流行服务的CDN支持帮助您进行开箱即用的缓存和缩小。另一方面,CloudFlare是Bluehost和SiteGround等大多数托管公司提供的免费CDN。结合缓存和 CDN 的强大功能来提高站点的速度是一个好主意。

    在本文中,让我们讨论如何在WordPress站点中设置W3TC以连接CloudFlare CDN。

    需要准备什么?

    您需要以下东西才能将CloudFlare和W3TC连接起来:

    配置W3TC以连接CloudFlare CDN

    W3 Total Cache不提供CloudFlare CDN设置的任何默认设置。事实上,它推荐StackPath的MaxCDN,这是WordPress用户的另一个流行的CDN选项。您必须在W3TC中启用扩展才能使用CloudFlare。

    安装CloudFlare扩展

    登录到您的WordPress管理面板并导航到“Performance > Extensions”部分。在这里,您将找到W3TC的所有可用扩展并激活CloudFlare扩展。

    为W3TC激活CloudFlare扩展

    为W3TC激活CloudFlare扩展

    激活后,单击“Settings”链接转到CloudFlare设置。首先,您应该将您的CloudFlare帐户与W3TC连接并验证连接。

    使用W3TC对CloudFlare进行身份验证

    使用W3TC对CloudFlare进行身份验证

    单击“Authorize”按钮,系统将提示您输入CloudFlare帐户中的API密钥。

    在CloudFlare帐户中获取API密钥

    登录到您的CloudFlare帐户并导航到您的帐户设置。向下滚动到“API Key ”部分,然后单击“View API Key ”按钮对“Global API Key ”。将API密钥复制到剪贴板。

    从CloudFlare获取Global API Key

    从CloudFlare获取Global API Key

    连接CloudFlare和W3TC

    现在回到WordPress管理面板并在W3TC授权框中输入API密钥。

    在W3TC授权框中输入CloudFlare API Key

    在W3TC授权框中输入CloudFlare API Key

    单击“Next”按钮,您应该会看到该区域作为您在CloudFlare帐户中激活的域名。

    在W3TC中查看区域信息

    在W3TC中查看区域信息

    现在您已成功连接CloudFlare和W3TC。点击“Next”按钮进入完整设置页面。

    配置CDN设置

    CloudFlare中的所有现有设置都应默认显示。您还将获得W3TC的其他设置以优化缓存。在这里,我们将展示一些您应该注意的重要设置。

    通用设置

    在“General”部分下,您可以启用缓存时间和页面缓存选项。缓存时间是CloudFlare日期应存储在W3TC缓存中的时间(以分钟为单位)。页面缓存选项允许您在站点上的页面内容发生更改时刷新CloudFlare缓存。

    常规CloudFlare设置缓存设置

    常规CloudFlare设置缓存设置

    在“CloudFlare:Caching”部分,您可以配置缓存级别、浏览器缓存时间等选项。

    W3TC中的CloudFlare缓存设置内容处理设置

    W3TC中的CloudFlare缓存设置内容处理设置

    在“CloudFlare:Content Processing”部分,您可以启用HTML、JS和CSS资源的最小化。另一个重要的选项是启用“Rocket Loader ”。这是一个异步加载JavaScript文件以提高页面加载速度的性能增强器。

    在W3TC中启用Rocket Loader SSL设置

    在W3TC中启用Rocket Loader SSL设置

    如今, SiteGround和Bluehost等所有托管公司都提供预装在WordPress安装上的Let’s Encrypt SSL。CloudFlare帐户和主机帐户中的SSL设置可能会干扰并产生问题。因此,请确保在此处设置正确的SSL设置。还。只有高级帐户持有人才能从W3TC设置中设置SSL级别,即使您的主机支持使用CloudFlare的SSL。

    使用CloudFlare配置SSL

    使用CloudFlare配置SSL

    配置设置完成后保存所有更改。请记住,CloudFlare就像您的服务器和用户之间的中介。激活CloudFlare需要更改DNS,这可能需要48小时才能正确传播。尤其是,使用CloudFlare进行DNS传播对于具有SSL证书的站点将需要很长时间。您的站点将关闭,直到DNS更改完全传播。

    小结

    尽管有许多可用于WordPress的CDN服务,但CloudFlare是最简单的解决方案之一。它可以通过许多托管计划免费使用,并且设置非常简单。您需要更改名称服务器并在W3 Total Cache等插件中链接您的帐户。您可以从插件配置所有设置并增加您网站的内容交付。

  • 如何在WP Rocket插件中使用安全模式?

    wp rocket

    顾名思义,安全模式表示有助于在不完全禁用功能的情况下解决问题。例如,您可以在PC中以安全模式打开Word和Excel文档,通过禁用扩展程序和其他不必要的功能来打开应用程序。现在越来越流行,像WP Rocket这样的WordPress插件也提供安全模式。

    在本文中,我们将解释如何在WP Rocket中启用安全模式以及如果这样做会发生什么。

    排查WP Rocket问题

    作为一个强大的缓存插件,WP Rocket可能会破坏您的网站布局或禁用某些功能。当您启用合并JavaScript、删除未使用的CSS等设置时会发生这种情况。每当您想确认问题是由于WP Rocket缓存引起的,您可以轻松绕过WP Rocket缓存来检查您网站上未缓存的页面。好的部分是您可以在不停用插件的情况下执行此操作。

    WP Rocket官网

    但是,确认问题后,唯一的选择是停用插件或逐一禁用功能以缩小问题范围。为了使此故障排除更容易并最大程度地减少工作,WP Rocket引入了一项称为安全模式的新功能。使用此功能,您可以在不停用插件的情况下禁用整个站点上的某些功能。

    在WP Rocket中启用安全模式

    • 当您遇到问题时,请转到仪表盘中的“插件 > 已安装插件”部分。
    • 找到WP Rocket插件,然后点击插件名称下方的“停用”链接。

    停用WP Rocket插件

    停用WP Rocket插件

    • 如果您使用的是3.11.0.3之前的版本,您将看到如下消息。

    旧插件版本中的消息

    旧插件版本中的消息

    • 这意味着您必须首先将插件更新到3.11.1或更高版本。之后,您将在停用时看到以下消息。
    • 现在,选择“Yes, apply Safe Mode”选项,然后单击“Confirm”按钮。
    • 您已在WP Rocket 插件中启用安全模式并继续检查问题是否已解决。

    WP Rocket中的安全模式选项

    WP Rocket中的安全模式选项

    安全模式会发生什么?

    确认安全模式选项时,WP Rocket将禁用以下功能。

    • 在“Media > Lazy Load”下的图片、iframe和视频的延迟加载选项将禁用。
    • 所有CSS和JavaScript优化,如“File Optimizations”下的最小化、合并、关键CSS生成删除未使用的CSS、延迟JS会被禁用。
    • 在“CDN”下“Enable Content Delivery Network”选项将禁用。

    禁用所有这些功能后,您应该能够使站点恢复工作状态。之后,您可以一一启用这些选项并检查哪个选项造成了问题。

    如何禁用安全模式?

    这一点很重要,因为WP Rocket不提供任何禁用安全模式的选项。由于它只是禁用一组选项,因此您需要重新启用这些设置以禁用安全模式。这意味着您应该在使用安全模式之前记住之前的设置。否则,您可能会对您之前是否使用过某个功能感到困惑。在这种情况下,我们不建议使用安全模式,除非您知道自己的设置或使用WP Rocket进行了登台/本地主机设置。

    小结

    在完全停用插件之前,您可以轻松地在WP Rocket中启用安全模式。它可以帮助您在不丢失缓存功能的情况下恢复您的站点。但是,您必须逐个启用这些功能才能恢复以前的手动设置。

  • 如何使用WP Rocket插件正确设置Cloudflare?

    如何使用WP Rocket插件正确设置Cloudflare?

    WP Rocket是WordPress网站最简单有效的缓存插件之一。它提供一键式功能,用于删除未使用的CSS延迟JavaScript和优化缓存以加速您的网站。另一方面,Cloudflare是一项免费的CDN服务,可从最近的位置向用户访问者提供内容。将WP Rocket缓存的强大功能与Cloudflare CDN相结合以提高您网站的性能是一个好主意。

    Rocket CDN与Cloudflare

    WP Rocket还提供自己的RocketCDN,您可以将CDN部分集成到WP Rocket设置中。RocketCDN来自StackPath,您每月需要7.99美元才能开始使用这项仅限高级服务。要使用RocketCDN,您需要通过在您的DNS区域中设置CNAME来创建CDN重定向,并在CDN设置页面添加CNAME。但是,Cloudflare是一个免费的CDN,您无需创建CNAME记录即可在WordPress中使用Cloudflare。

    来自WP Rocket的RocketCDN

    来自WP Rocket的RocketCDN

    您需要更改指向Cloudflare服务器的域的名称服务器,并通过它们路由整个流量。这有助于保护您的网站并改善向用户的内容交付。要将Cloudflare与WP Rocket一起使用,您需要启用附加组件且无需使用CDN部分。

    WP Rocket Cloudflare附加组件

    要将WP Rocket与Cloudflare一起使用,您必须启用默认情况下随WP Rocket插件提供的附加组件。将Cloudflare CDN与WP Rocket一起使用时,不必使用该插件。但是,该插件有助于优化您的Cloudflare帐户中的设置,以便通过缓存正确使用CDN设置。

    启用Cloudflare插件

    登录到您的WordPress管理面板并导航到“Setting > WP Rocket”部分。导航到“附加组件”菜单并向下滚动到“Rocket Add-ons”部分。此时,WP Rocket提供了两个附加组件——Cloudflare和Sucuri。默认情况下,所有加载项状态都设置为关闭。通过单击“Add-ons status”按钮打开Cloudflare加载项,如下所示。

    WP Rocket插件中的Cloudflare插件

    WP Rocket插件中的Cloudflare插件

    使用WP Rocket设置Cloudflare

    启用插件后,单击“Modify Options”按钮查看配置设置。有三个部分可用于优化Cloudflare的设置。

    • Cloudflare凭据
    • Cloudflare设置
    • Cloudflare缓存

    相关文章:

    Cloudflare凭证

    要将WP Rocket与Cloudflare一起使用,您需要允许插件访问您的Cloudflare帐户。这可以通过添加Cloudflare全局API密钥、区域ID以及您的登录电子邮件地址来完成。

    连接Cloudflare和WP Rocket

    连接Cloudflare和WP Rocket

    转到您的Cloudflare帐户并选择您的站点以查看仪表盘。您将登陆“Overview”部分并向下滚动以查看“API”部分(这将显示在右侧边栏上)。您可以在此处找到Zone ID,将其复制并粘贴到您的WP Rocket Zone ID文本框中。之后单击显示在您的帐户ID下方的“Get your API token”链接。

    获取Cloudflare区域ID

    获取Cloudflare区域ID

    这将带您进入帐户资料中的“API Tokens”部分。您可以在“API Keys”部分看到“Global API Key”和“Origin CA Key”。单击Global API Key选项的“View”按钮。

    在Cloudflare中获取Global API Key

    在Cloudflare中获取Global API Key

    您需要输入您的Cloudflare帐户密码才能查看Global API Key。因此,输入您的密码,然后单击弹出窗口中的“View”按钮。

    输入Cloudflare密码

    输入Cloudflare密码

    现在,您将获得您的全局API密钥,您可以将其复制并粘贴到WP Rocket的“Global API Key”文本框中。

    复制全局API密钥

    复制全局API密钥

    注意:对于帐户电子邮件,请确保向您提供Cloudflare帐户电子邮件,而不是WP Rocket或WordPress管理员电子邮件地址。

    Cloudflare设置

    下一部分,您将拥有如下所示的三个选项。关闭开发者模式和相关协议选项并启用“Optimal settings”选项。

    Optimal Cloudflare设置

    Optimal Cloudflare设置

    开发模式将在您的Cloudflare帐户中打开开发模式并禁用缓存/缩小设置。您可以使用开发模式立即测试更改,而不会干扰Cloudflare缓存。否则,只需禁用此选项即可。启用最佳设置以自动打开Cloudflare中的以下功能:

    • 自动缩小 – 启用 CSS、JSS和HTML最小化选项。
    • 将浏览器缓存TTL从默认值4小时更改为1年。
    • 禁用WP Rocket功能。
    • 使缓存级别达到标准。

    Cloudflare最佳设置

    Cloudflare最佳设置

    相对协议选项会将所有静态文件(如图像)的URL更改为使用//而不是http://或https://。WP Rocket建议仅在Cloudflare中的SSL状态设置为灵活时才使用此选项。您可以在Cloudflare帐户仪表盘的“SSL/TLS > Overview”部分下查看SSL/TLS状态。

    在Cloudflare中检查SSL状态

    在Cloudflare中检查SSL状态

    如果您使用完整或严格模式,则禁用相关协议选项。

    Cloudflare缓存

    这是最终设置,只有当您想要删除Cloudflare缓存的内容时,才可以单击“CLEAR ALL Cloudflare CACHE FILES”。这与Cloudflare帐户的“Caching > Configuration”部分下的“Purge Everything”选项相同。

    从WP Rocket清除所有Cloudflare缓存

    从WP Rocket清除所有Cloudflare缓存

    完成设置后,单击“Save Changes”按钮以连接WP Rocket和Cloudflare。您将在您的Cloudflare帐户中看到更改的最佳设置摘要,并且WP Rocket将开始预加载页面。

    Cloudflare设置状态

    Cloudflare设置状态

    小结

    如您所见,WP Rocket通过附加组件简化了Cloudflare设置。您只需连接您的Cloudflare帐户并启用最佳设置即可无缝使用CDN。如果您的网站出现问题,您可以禁用该插件并直接在Cloudflare帐户中进行更改。

  • 如何实现WordPress评论延迟加载(懒加载)?

    如何实现WordPress评论延迟加载(懒加载)?

    WordPress带有默认的评论系统,您可以使用它在您的博客上进行互动讨论。您可以选择启用或禁用站点范围内的评论以及单个博客文章。当您对文章有大量评论时,用户需要滚动浏览整个评论部分才能到达页脚。

    在本文中,我们将解释如何在WordPress中延迟加载评论以仅在需要时加载它们。

    懒加载评论

    延迟加载是仅在有用户交互时才加载内容的功能。虽然WordPress用户主要使用延迟加载图像,但您也可以使用此功能进行评论。以下是您需要在WordPress网站中延迟加载评论的一些原因。

    • 评论仅在您的博客文章底部可用,因此在初始页面加载期间不需要加载它们。
    • 长长的评论列表会增加DOM元素,从而影响您网站的页面加载速度
    • 当用户不想发表评论时,评论表单可能会影响用户在您网站上的体验。
    • 冗长的评论列表会在移动设备上占据很大的空间,这是可以避免的。
    • 默认情况下,评论将显示gravatar图像,如果您从设置中禁用gravatar,大多数主题将无法正确对齐评论部分。由于gravatar图片是从第三方网站加载的,因此会影响您网站的速度。

    总之,在需要时隐藏和加载评论表单将改善页面加载时间和用户体验。由于这些是谷歌搜索算法中的排名因素,您可以通过延迟加载评论来提高排名。

    评论分页的默认选项

    WordPress 在“设置 > 讨论”部分提供了一些默认设置来管理评论。例如,您可以设置在博客文章中显示的最大评论数。当评论数量超过设置限制时,这将创建分页评论。但是,它并没有提高多少速度,因为评论表单将在初始页面加载期间加载。

    在WordPress仪表盘中启用分页评论

    在WordPress仪表盘中启用分页评论

    对于gravatar图片,您可以通过WP RocketPerfmatters等插件使用图片延迟加载功能。此外,大多数免费缓存和优化插件都提供图像延迟加载功能,您可以使用它来延迟加载gravatar图像。

    在WordPress中延迟加载评论

    懒加载评论可以解决很多速度问题,包括懒加载gravatar图片。为此,您必须使用延迟加载评论插件并选择方法。登录到您的WordPress仪表盘部分后,转到“插件 > 安装插件”区域。搜索“lazy load comments”并向下滚动以找到lazy load comments插件

    单击“立即安装”按钮,然后单击“启用”按钮开始在您的站点上使用该插件。

    安装lazy load comments插件

    安装lazy load comments插件

    自定义评论延迟加载选项

    该插件提供了一种简单的设置来决定您希望如何延迟加载评论部分。转到“设置 > 讨论”部分并向下滚动到底部。在“头像”部分上方,您可以找到“Lazy Load Comments”的新选项。

    延迟加载评论设置

    延迟加载评论设置

    单击“lazy load comments”的下拉菜单以找到三个可用选项。

    选择滚动延迟加载评论

    选择滚动延迟加载评论

    • On Scroll – 当用户到达页面上的评论部分时,延迟加载滚动评论。这是一个默认选项,类似于延迟加载图像。
    • On Click – 这将显示“Load Comments”按钮,用户可以单击它以显示评论和表单部分。
    • No Lazy Load – 这将禁用延迟加载功能,因此不要选择此选项。

    我们建议选择“On Click”选项以显示一个按钮,该按钮可以通过两种方式提供帮助。首先是只有感兴趣的用户想要留下或阅读评论才会点击按钮。其次,它可以通过隐藏评论和表单来节省空间,从而改善手机上的用户体验。选择选项后,向下滚动并单击“保存更改”按钮以在您的站点上应用设置。

    在您的网站上进行测试

    我们建议您在测试或临时站点中测试延迟加载按钮。这是因为按钮的外观取决于您主题的样式,并且大多数主题不支持正确的样式。下面是“Load Comments”按钮在默认的WordPress主题二〇二二中的外观。单击按钮时,您将看到一个旋转的加载程序,然后将出现评论部分。

    在默认WordPress主题中加载评论按钮

    在默认WordPress主题中加载评论按钮

    这是按钮在我们测试过的第三方主题之一上的外观。它只是显示为没有清晰可见性的文本。

    加载评论按钮未对齐

    加载评论按钮未对齐

    如果您的主题没有正确显示“Load Comments”按钮,您需要使用自定义CSS调整填充和边距细节。该插件使用llc_comments_button的CSS类ID来定义按钮样式。例如,下面是我们用来对齐breek主题上的按钮的CSS代码。

    #llc_comments_button {
    padding: 15px;
    margin: 100px;
    border-radius: 5px;
    font-size: 18px;
    background: rgb(255 241 118);
    }
    #llc_comments_button {
    padding: 15px;
    margin: 100px;
    border-radius: 5px;
    font-size: 18px;
    background: rgb(255 241 118);
    }
    #llc_comments_button {
    padding: 15px;
    margin: 100px;
    border-radius: 5px;
    font-size: 18px;
    background: rgb(255 241 118);
    }

    您可以在浏览器中使用检查选项检查源代码,并在实时站点上调整填充、边距、边框半径和其他参数。

    在浏览器中自定义按钮CSS

    在浏览器中自定义按钮CSS

    如果要在悬停时更改按钮背景,请使用以下CSS。由于我们在上面的CSS中使用黄色变体作为默认按钮背景,这里我们使用白色来显示悬停。这与黑色文本颜色混合,以便用户可以清楚地看到按钮并阅读文本。

    #llc_comments_button:hover {
    background: rgb(255 255 255);
    }
    #llc_comments_button:hover {
    background: rgb(255 255 255);
    }
    #llc_comments_button:hover {
    background: rgb(255 255 255);
    }

    准备好CSS后,转到WordPress管理仪表盘并导航到“外观 > 自定义”部分。将CSS代码粘贴到“附加CSS”部分下,然后单击“发布”按钮。

    在定制器部分添加额外的CSS

    在定制器部分添加额外的CSS

    请注意,定制器不会反映按钮,因为延迟加载仅适用于实时站点。

    评论链接的问题

    许多主题在文章标题下方显示“评论”链接作为文章元数据。延迟加载评论时,此评论链接将不起作用,因为当您在文章标题部分时不会加载评论部分。

    标题下方的评论元链接

    标题下方的评论元链接

    不幸的是,这里唯一的选择是禁用评论元链接。Astra、GeneratePress和Kadence等流行的轻量级主题提供了一个选项来切换您想要在标题下方显示的元数据。但是,如果您的主题不提供此功能,您可能需要使用CSS来隐藏链接。如上所述,您可以右键单击链接并使用检查选项在开发人员工具部分中找到相关的CSS类。拥有评论元数据的CSS类后,在“外观 > 自定义 > 附加CSS”部分下添加以下CSS以隐藏链接。

    .my_comments_meta {
    display: none;
    }
    .my_comments_meta {
    display: none;
    }
    .my_comments_meta {
    display: none;
    }

    如果需要,请从主题开发人员那里获得有关如何隐藏元链接的帮助。

    延迟加载第三方评论设置

    一些网站所有者使用Facebook或Disqus评论而不是默认的WordPress评论表单。虽然这有助于减少评论垃圾邮件,但它会通过发送额外的HTTP请求以从第三方站点加载评论,从而极大地影响速度。如果您使用Facebook或Disqus评论,那么您可以使用不同的插件延迟加载它们。您可以使用Facebook的Lazy Social Comments插件和Disqus的Disqus Conditional Load插件。

    FB和Disqus评论延迟加载插件

    FB和Disqus评论延迟加载插件

    这些插件也来自同一作者,但是提供了大量的自定义设置。对于Facebook评论延迟加载,安装插件后转到“设置 > Lazy FB Comments”部分。填写应用ID的详细信息、要显示的评论数量、选择配色方案并选择点击选项。您还可以添加一个“Comments Div Class”以将按钮包装在 div元素中,您可以使用其他CSS进行自定义,如上所述。

    Lazy FB Comments设置

    Lazy FB Comments设置

    Disqus Conditional Load插件需要在延迟加载之前完全集成Disqus。它将在仪表盘侧边栏中创建名为“Disqus”的附加菜单项。您可以浏览不同的部分并自定义设置以延迟加载Disqus评论。

    Disqus Conditional Load插件设置

    Disqus Conditional Load插件设置

  • 如何解决使用Cloudflare导致WP-Cron不工作问题?

    WordPress定时任务不工作

    WordPress需要一些基本要求,例如MySQL和正确的PHP版本才能正常运行。此外,您还需要额外的设置才能使已安装的插件和主题正常工作。

    WP-Cron是WordPress网站在仪表盘中获取更新和报告所需的此类要求之一。另一方面,Cloudflare是许多托管公司内置的流行的免费CDN服务。

    不幸的是,如果您没有正确配置Cloudflare,它可能会停止WP-Cron作业的运行并导致不希望出现的问题。如果您遇到困难,这里是您可以尝试通过Cloudflare CDN设置以修复WP-Cron无法正常工作的问题。

    更多关于WP-Cron

    Cron是Unix中用于调度作业以在后台完成任务的命令。在WordPress世界中,WP-Cron类似于Unix cron作业,用于以周期性间隔调度任务。与您可以在特定时间安排的系统cron作业不同,WP-Cron在每次页面加载时运行并触发预定任务。以下是一些示例,让您了解WP-Cron的作用:

    • 更新WordPress仪表盘小工具,例如实时销售小工具。
    • 检查处于预定状态的文章并按计划发布。
    • 插件可以在后台运行数据库更新、缓存清除等任务。

    您还可以在此处从官方WordPress页面阅读有关WP-Cron的更多详细信息。

    查找WP Cron问题

    当WP-Cron运行出现问题时,会直接影响定时任务的运行。您可以在仪表盘和服务器的错误日志中看到一些失败通知。下面是一个来自WP Rocket插件的例子,它使用WP-Cron来运行预定的缓存清除。如果不清除缓存,则会因大量过时的缓存内容而减慢您的网站速度。

    WP Rocket Cron作业问题

    WP Rocket Cron作业问题

    您还可以使用WP Crontrol之类的插件来监控和查找站点中与cron相关的问题。一旦您发现WP-Cron存在问题,您应该检查您最近在该网站上所做的活动。如果您启用了Cloudflare或更改了CDN中的任何设置,那么这是开始故障排除的第一个地方。

    在Cloudflare中检查WP Cron问题

    Cloudflare的安全设置允许您阻止恶意机器人。不幸的是,这也可以阻止像WP-Cron这样的自动化活动作为误报。好的部分是您可以根据日志中的IP地址和查询字符串轻松找到它。由于WP-Cron将从您的托管服务器的IP地址运行,您可以根据您的服务器的IP检查被阻止的条目以查找更多详细信息。

    • 如果您不知道服务器的IP地址,您可以从主机面板中找到它。或者,您可以转到Cloudflare帐户的DNS部分并找到带有@的A记录,该记录将指向您服务器的IP地址。
    • 之后,转到“Security>Overview”部分,然后单击“Add filter”按钮。
    • 根据与服务器IP相同的IP地址过滤日志。
    • 在这里,您应该找到显示“ /wp-cron.php ”的“Paths”部分,如下图所示。
    • 您还可以找到其他详细信息,例如阻止的原因,在我们的例子中是“manage defined bots”。

    查找服务器IP的安全详细信息

    查找服务器IP的安全详细信息

    如果您想了解更多详细信息,请在页面上向下滚动并查看活动日志部分。在这里,您可以找到为了解WP-Cron因托管规则设置和托管挑战而被阻止而采取的服务和操作。这取决于您的安全设置,您可能在其中选择了一些带有托管质询的选项。

    查看服务器IP的活动日志

    查看服务器IP的活动日志

    单击“Edit columns”按钮以添加可以显示更多详细信息的其他列。由于IP地址已经存在,请选择“Path”和“Query string”复选框。

    选择路径和查询字符串

    选择路径和查询字符串

    这将添加其他列并向您显示路径和查询字符串。正如您在下面的屏幕截图中所见,路径将显示为/wp-cron.php,查询字符串将显示类似?doing_wp_cron的内容。

    查找路径和查询字符串详细信息

    查找路径和查询字符串详细信息

    相关文章:

    使用Cloudflare修复WP-Cron问题

    现在很明显,Cloudflare安全设置会阻止WP-Cron在您自己的托管服务器上运行。尝试以下选项来解决问题。您可能需要检查您的WordPress仪表盘,使用插件或检查服务器的日志,如上所述,以确认WP-Cron工作正常。

    1.禁用绝对自动化的机器人

    免费Cloudflare帐户有一个简单的“机器人战斗模式”来阻止自动机器人。您可以转到“Security> Bots”部分并关闭此选项并检查WP-Cron是否在您的站点上运行。

    Bots Fight Mode

    在免费Cloudflare帐户中禁用Bots Fight Mode

    如果您使用高级Cloudflare计划,请在“Security > Bots”部分单击“Configure Super Bot Fight Mode”链接。

    在Cloudflare中配置超级机器人战斗模式

    在Cloudflare中配置超级机器人战斗模式

    在这里,您可以看到“Definitely automated”机器人被“Managed Challenge”选项阻止。这是您在活动日志中看到的“Definitely automated”,如上所述。由于WP-Cron肯定是在后台自动化的,Cloudflare会阻塞并造成麻烦。单击下拉菜单并选择“Allow”,Cloudflare将自动保存您的设置。

    允许绝对自动化的机器人

    允许绝对自动化的机器人

    在大多数情况下,这将解决Cloudflare的WP-Cron不工作问题。

    2.禁用WAF下的托管规则

    如果允许机器人不能解决问题,那么下一个选项是禁用Cloudflare自动设置的托管规则。根据您使用的平台,Cloudflare将自动启用某些Web应用程序防火墙 (WAF) 规则来保护您的站点。您可以转到“Security> WAF”部分并在“Managed rules”部分下找到为您的站点启用的规则。只需禁用“Managed rules”选项即可将其关闭。

    在Cloudflare中禁用托管WAF规则

    在Cloudflare中禁用托管WAF规则

    或者,进入页面并仅禁用Cloudflare WordPress规则集。

    禁用Cloudflare WordPress规则集

    禁用Cloudflare WordPress规则集

    现在,检查您的WP-Cron是否在没有来自Cloudflare的WAF规则的情况下运行。

    3. 在IP访问规则中将您的服务器列入白名单

    禁用WAF规则集是有风险的,这可能会破坏Cloudflare安全的目的。虽然您可以使用Wordfence和AIOWPS等插件来添加防火墙,但最好的选择是在Cloudflare WAF设置中允许您网站的服务器IP。当您位于Cloudflare帐户的WAF部分时,请转到“Tools”选项卡。输入您的服务器IP,选择允许和此网站选项,然后单击“Add”按钮。这将添加一个异常并避免阻止您自己的服务器的活动,如WP-Cron作业。

    为绕过Cloudflare防火墙添加IP例外

    为绕过Cloudflare防火墙添加IP例外

    小结

    Cloudflare是流行的CDN和安全服务,但是,它无法识别WordPress站点所需的另一个流行的WP-Cron作业。这是可以理解的,因为插件可以出于不同的原因运行WP-Cron并导致您的站点出现安全问题。

    不幸的是,即使在服务器上手动安排cron作业也无法解决问题,因为插件开发人员可能会使用默认的WP-Cron作业。解决方案是禁用机器人保护或排除服务器的IP地址,这将允许运行WP-Cron作业。

  • 如何解决Elementor加载缓慢问题?

    如何解决Elementor加载缓慢问题?

    Elementor是一个免费的WordPress页面构建器插件,拥有超过500万个活动安装。此外,该插件还具有高级版本和数百个附加组件,可在您的网站中添加精美的元素。

    与任何其他页面构建器插件一样,Elementor添加了自定义样式和脚本,为页面的前端外观添加了令人惊叹的因素。但是,它会在前端和后端影响您网站的页面加载速度的高成本。如果由于Elementor页面构建器而导致网站速度缓慢,您可以尝试以下一些选项来解决速度问题。

    修复缓慢的Elementor插件

    页面速度和用户体验是谷歌搜索算法中的排名因素。因此,与使用拖拽页面速度的Elementor添加美化元素相比,您必须重视加快网站速度。幸运的是,Elementor在插件设置中提供了一些优化功能。此外,您可以优化可能影响Elementor页面加载速度的外部因素。

    使用Elementor设置优化页面速度

    让我们首先探索这些设置,如果这些设置不能解决您的问题,那么您应该检查其他解决方案。

    1. 仅对页面启用Elementor

    默认的WordPress设置允许您创建两种文章类型——文章和页面。此外,像WooCommerce这样的插件将创建产品,您还可以根据需要创建自定义文章类型。我们强烈建议只为页面启用Elementor,而不是为文章和其他自定义文章类型启用。这有助于在前端和后端禁用除页面之外的Elementor资源的加载。当您激活Elementor插件时,它将默认为文章和页面启用。您可以转到“Elementor > Settings”菜单并在“General”选项卡下禁用文章插件。

    为文章禁用Elementor

    为文章禁用Elementor

    2. 使用Elementor Experiments

    该插件在“Experiments”选项卡下提供了许多实验性功能。在这里,您可以看到正在进行的实验以及已完成并被接受为稳定功能的实验。为了提高加载速度,您可以在稳定和持续部分下启用所有与速度相关的项目。

    激活以下正在进行的实验:

    • Improved Asset Loading – 此选项将减少加载的默认代码并仅在需要时动态加载剩余代码。
    • Improved CSS Loading – 这与上面的功能相同,仅在需要时加载CSS。
    • Inline Font Icons – 禁用Font Awesome和eicon的加载并加载内联SVG图标。

    Elementor正在进行的实验

    Elementor正在进行的实验

    激活以下Stable实验:

    • Optimized DOM Output——这将减少HTML wrappers的数量以提高速度。

    Elementor Stable功能

    Elementor Stable功能

    确保在启用正在进行的实验后彻底测试您的网站,因为它们可能会破坏您网站的布局。例如,动态加载资源会影响使用WP Rocket和其他插件删除未使用的CSS等功能。

    3.优化字体使用

    使用Google字体和其他自定义字体会在Google PageSpeed Insights中产生很多问题。例如,当您使用带有Elementor插件的Google Fonts时,您会看到在加载Web字体和预加载字体时使文本可见的警告。幸运的是,Elementor具有内置的字体优化选项,您可以使用它们来提高页面加载速度。

    • 如上所述,使用“Inline Font Icons”来使用“Ongoing Experiments”部分下的SVG图标。
    • 转到“Elementor > Settings > General”部分并启用“Disable Default Fonts”选项。这将有助于禁用Elementor加载的字体,并且该插件将继承您主题的所有元素的字体。
    • 如果您不想禁用Elementor字体,请转到“Advanced”选项卡并为“Google Fonts Load”选择“Swap”选项。这将有助于为每个Google字体文件请求添加“swap”参数,并修复PageSpeed Insights中的文本可见性警告。

    使用外部CSS文件并交换Google字体

    使用外部CSS文件并交换Google字体

    4.使用外部CSS文件

    正如您在上面的屏幕截图中看到的那样,Elementor允许两个“CSS Print Method”选项。一种是使用“External File”,另一种是使用“Internal Embedding”。选择“External File”选项,以便将所有CSS样式作为外部文件加载。之后转到“Elementor > Tools > General”部分,然后单击“Regenerate Files & Data”。这将重新生成数据并作为外部CSS文件加载。它将有助于正确缓存页面并提高速度,而不是动态注入无法缓存的CSS。

    Elementor中的安全模式和文件重新生成

    Elementor中的安全模式和文件重新生成

    5.尝试安全模式

    如果您在创建或编辑页面时遇到加载缓慢的Elementor编辑器,则可以使用“Elements > Tools > General”部分下的安全模式。安全模式会在加载缓慢时在编辑器中显示建议。

    Elementor Editor以安全模式打开

    Elementor Editor以安全模式打开

    同样,您可以启用“Debug Bar”选项来查找页面上加载的模板。当您尝试解决问题时,此信息可用于故障排除。

    6.回滚插件

    最后,如果您在升级Elementor后遇到任何问题,可以选择恢复到以前的版本。与任何回滚一样,请确保备份数据库以备不时之需。转到“Elementor > Tools > Version Control”部分。您可以重新安装当前版本,也可以选择要回滚的任何先前版本。

    回滚Elementor插件

    回滚Elementor插件

    提高Elementor速度的其他因素

    以上所有因素都在Elementor设置范围内,以下是可能影响您网站速度的外部因素。

    7.使用轻量级主题

    尽管Elementor是一个独立的插件,但许多商业主题都将Elementor与其他功能捆绑在一起。由于这些主题是自定义编码来创建页面布局的,因此很容易产生冲突并影响加载速度。我们建议使用带有免费Elementor入门模板的轻量级主题,例如Astra或GeneratePress。

    另一种选择是使用来自同一插件开发人员的Hello Elementor主题。这个主题有超过100万个活动安装,并且在不知不觉中可以与Elementor顺利配合。它具有最小的设计,主要与Elementor模板一起使用。因此,如果您真的喜欢Elementor插件,那么Hello Elementor是您拥有优化网站的最佳主题。

    免费Hello Elementor主题

    免费Hello Elementor主题

    8. 减少附加组件的数量

    有数百个第三方插件可用作Elementor页面构建器插件的附加组件。这些插件将为基础插件添加额外的元素以创建漂亮的布局。但是,这些插件可能无法很好地与父Elementor插件一起使用,尤其是当父插件更新到较新版本时。此外,附加组件将添加额外的CSS/JS并增加HTTP请求。如果您喜欢 Elementor,请转到提供足够元素和模板库的 Pro 版本。避免使用第三方插件来添加一些可能会降低您网站速度的元素。

    如果您想使用附加组件,请使用诸如Ultimate Add-ons for Elementor之类的插件。您可以仅启用所需的小工具并禁用其他小工具以减小文件大小。

    9.检查缓存设置

    首先是确保在使用Elementor时有适当的缓存或优化插件。这将有助于将所有页面作为静态页面提供并提高加载速度。WP RocketPerfmatters是可用于优化Elementor网站的两个最佳插件。但是,在使用WP Rocket或任何其他缓存插件优化CSS交付功能时需要小心。当您在Elementor中添加了动态CSS时,删除未使用的CSS生成关键路径CSS将无法正常工作。

    • 如果您优化网站上的CSS交付,请禁用“Improve CSS Loading”实验并使用外部文件选项。
    • 或者,您可以从CSS优化中排除动态文件。由于动态资源会在每个页面上发生变化,因此您需要使用缓存/优化插件允许的通配符格式排除它们。

    如果您将Elementor用于文章或任何其他自定义文章类型,那么我们强烈建议您使用Perfmatters或Asset Cleanup插件。使用这些插件,您可以在特定文章和站点级别禁用未使用的CSS和JS文件。

    9. Cloudflare Rocket Loader

    当用户从全球访问您的页面时,CDN有助于将您的内容从最近的服务器传送到用户的位置。这适用于Elementor页面和您的整个网站。许多用户使用托管公司提供的免费Cloudflare CDN以及Elementor设置。Cloudflare提供了一项名为Rocket Loader的功能,可帮助改进基于JavaScript的页面的加载。但是,它可能会在Elementor编辑器中以及在已发布的页面上产生问题。如果您发现编辑器在滚动或发布页面损坏时运行缓慢和跳跃,请禁用Rocket Loader功能并检查它是否有效。

    如果Rocket Loader是问题所在,那么您可以使用Cloudflare中的页面规则忽略Elementor页面和模板来解决问题。

    10.优化托管设置

    Elementor和WooCommerce等其他重型插件需要优化的托管来更快地加载您的页面。之前,您需要寻找SiteGround Cloud、 Cloudways或任何其他VPS托管平台来使用Elementor页面构建器。现在Elementor人自己提供了一个优化的托管与谷歌云平台和Cloudflare CDN。尽管这有10万次访问、100GB带宽和20GB空间的限制,但您可以轻松启动网站并以每年99美元的价格购买Elementor Pro。您可以获得针对Elementor的完全优化设置,并且您的网站将使用Hello Elementor等主题快速加载。

    11. 图像优化

    最后,在折叠区域上方使用的大尺寸图像将产生加载最大内容绘画的问题。此外,其他图像如果未正确优化也会产生问题。

    • 减小图像的大小和尺寸,尤其是用于折叠区域上方的图像。
    • 延迟加载图像以仅在用户滚动到该位置时加载它们。
    • 使用WebP格式来减小大小并更快地加载它们。

    小结

    像Elementor这样的插件因拖放元素和有吸引力的可重用模板而变得流行。然而,现在情况完全改变了,与漂亮的页面布局相比,速度是最重要的因素。您可以利用默认的Elementor实验和其他设置来修复缓慢的站点并提高页面加载速度。此外,您还可以尝试他们优化的Hello Elementor主题和高级云托管,让您的网站更上一层楼。

  • 如何解决WordPress由于字体导致预加载关键请求问题?

    如何修复WordPress由于字体导致预加载关键请求问题?

    如今,速度就是一切。浏览器会尝试缓存网页上的内容以加快加载速度。有很多方法可以通知浏览器缓存什么、何时缓存以及缓存内容保留多长时间。

    预加载就是这样一种缓存功能,有助于提高WordPress网站的页面加载速度。但是,这可能会在Google PageSpeed Insights工具中使用的Google Lighthouse报告中产生错误。

    在本文中,让我们解释如何解决PageSpeed Insights中由于字体导致的预加载关键词请求问题。

    如何使用预加载?

    预加载,顾名思义,就是在页面开始加载时,通知浏览器立即开始缓存网页上的资源。这将有助于缓存稍后需要的CSS、脚本和字体。您可以在这篇Google开发人员文章中了解有关预加载的更多信息。

    基本上,preload是HTML链接标签中rel属性的值。以下是在您的网站上使用预加载请求的语法:

    <link href=“font.woff” as=“style”>
    <link href=”font.woff” as=”style”>
    <link href="font.woff" as="style">

    对于网站上加载的每个CSS、脚本和字体文件,您需要在HTML的head标签之间插入此链接标签。

    预加载的Google PageSpeed问题

    虽然预加载会加快加载时间,但应该正确使用。使用PageSpeed Insights工具检查您的网站,看看是否有任何机会因预加载请求而可用。下面是一个示例,显示由于预加载关键请求,您可以节省7.05秒。

    单击向下箭头时,您将看到导致延迟的所有相关内容。在这种情况下,都是网页上加载的字体。

    PageSpeed Insights中的预加载关键词请求错误

    PageSpeed Insights中的预加载关键词请求错误

    WordPress插件和预加载

    现在,您可能会对WordPress网站的Google PageSpeed报告中显示的预加载方式感到困惑。您会收到此错误的原因有很多:

    • 通过在CSS中导入的主题和插件加载字体。
    • 您正在使用像WP Rocket这样的缓存插件来预加载页面但不预加载字体。
    • 您正在使用带有Google AdSense等广告的第三方字体或使用插件在您的网站上加载字体很棒的图标。

    缓存插件将预加载请求键添加到所有资源。但是,使用@font-face在CSS中导入的字体不会使用预加载键请求。PageSpeed显示的错误可能是由于站点加载的字体未使用预加载键所导致。

    如何修复由于字体导致预加载关键请求问题?

    您可以通过在PageSpeed中显示的那些资源的站点标题上手动添加预加载键来消除错误。但是,也有一些插件可以自动在您的标题上插入元标记。我们将解释手动和插件方法。

    使用WP Rocket修复Google PSI中的预加载关键词请求

    首先,我们将使用WP Rocket插件进行说明,因为它很简单,您不需要修改PHP文件。

    使用WP Rocket包括字体预加载

    WP Rocket是一款高级缓存插件,可让您预加载字体。如果您使用的是WP Rocket,请转到“设置 > WP Rocket > Preload”部分。将字体资源的相对URL粘贴到“Preload fonts”文本框下并保存更改。这将帮助您摆脱Google PageSpeed Insights工具中的预加载请求问题。请记住,相对URL的格式应为“/wp-content/themes/your-theme-name/font-file-name”(主题字体)和“/wp-content/plugins/plugin-name/font-file-name”(用于插件加载的字体)。

    在WP Rocket插件中预加载字体

    在WP Rocket插件中预加载字体

    WP Rocket优化了许多其他功能,例如关键CSS生成、DNS预取和在本地托管Google Analytics等第三方脚本。因此,使用WP Rocket之类的插件来提高WordPress网站的整体速度是一个好主意。WP Rocket插件还提供了生成关键路径CSS移除未使用的CSS的选项。

    手动添加预加载元标记

    按照以下步骤在主题的header.php文件中手动插入元标记。我们建议使用子主题,以便在更新父主题时更改将保持不变。

    准备链接元标记

    第一步是获取Google PageSpeed中显示的资源的所有URL。通常,您会看到URL的结尾部分,将鼠标悬停在链接上以查看阻塞资源的完整URL。现在,您可以复制URL并粘贴到文本编辑器中。

    您需要使用以下格式的URL来包含在链接标签中:

    <link rel=“preload” href=“Font URL Showing in PageSpeed” as=“font” crossorigin=“anonymous”>
    <link rel=”preload” href=”Font URL Showing in PageSpeed” as=”font” crossorigin=”anonymous”>
    <link rel="preload" href="Font URL Showing in PageSpeed" as="font" crossorigin="anonymous">
    

    为您的主题和插件使用的每个字体资源准备链接标签。

    在标题中插入链接标签

    下一步是复制所有带有预加载请求的链接标签,并粘贴到网站的标题部分。在您的WordPress网站上,您需要将链接标签粘贴到活动主题的header.php文件中。您可以使用托管帐户中的文件管理器应用程序或使用FTP编辑header.php文件并在标题中插入代码。

    • 使用FileZilla等FTP客户端登录您的托管帐户,或在您的托管帐户中找到文件管理器应用程序。
    • 导航到“/wp-content/themes/yourtheme”文件夹并找到header.php文件。

    编辑header文件

    编辑header文件

    • 编辑文件并在标题部分插入预加载代码。
    • 它将如下所示,记住插入您在Google PageSpeed Insights工具中看到的所有请求。

    在header文件中添加预加载参数

    在header文件中添加预加载参数

    或者,您也可以在管理仪表盘中转到“外观 > 主题编辑器”并编辑文件。我们建议使用子主题并修改header.php文件。如果修改父主题文件,每次更新主题时都需要手动插入这段代码。或者,您可以使用插入页眉和页脚插件等插件将链接标签添加到您网站的页眉,而无需编辑主题文件。

    再次检查PageSpeed

    手动插入链接标签或使用WP Rocket后,请确保清除您网站上的缓存。回来查看PageSpeed Insights,现在您不会看到预加载关键请求错误。

    没有预加载问题

    没有预加载问题

    您可以单击“Passed audits”部分并检查“Preload key requests”问题是否处于通过状态。

    结论

    通常,Google PageSpeed Insights会显示预加载错误,导致页面加载延迟数秒。您可以按照上述步骤手动或使用插件插入预加载链接。这将帮助您从Google PageSpeed中消除错误并提高速度得分。

  • 如何绕过WordPress中的WP Rocket缓存?

    如何绕过WordPress中的WP Rocket缓存?

    WP Rocket是可用于WordPress的最流行的缓存插件之一。它打破了拥有数百个选项的传统规则,并为用户提供了简单易用的界面。您只需切换选项即可在几分钟内加快您的网站速度

    但是,该插件在前端不提供任何选项来禁用页面缓存或绕过特定页面的设置。在本文中,我们将解释如何使用各种方法绕过WordPress中的WP Rocket缓存。

    绕过WP Rocket缓存

    尽管缓存可以帮助用户快速加载页面,但在您执行某些活动时可能会产生问题。以下是您可能希望绕过WP Rocket缓存的一些常见场景:

    • 您想在使用和不使用WP Rocket插件的情况下在Google PageSpeed Insights工具中测试页面速度得分。您可能还想查看在没有缓存的情况下加载了多少CSS或JS文件或进行类似分析。
    • 只想在某些页面上禁用WP Rocket缓存。例如,WP Rocket将无法与WooCommerce和GeneratePress主题一起使用,并使商店页面无响应。您需要在小屏幕上禁用WooCommerce样式才能解决此问题
    • 您想禁用WP Rocket自动的页面级缓存,而没有任何选项可以在前端禁用它。

    根据情况,您可以按照以下选项之一绕过WP Rocket缓存。在大多数情况下,您可能需要在整个站点或页面级别禁用插件而不是绕过。因此,我们将解释禁用和绕过而不停用的可用选项。

    1.完全禁用插件

    简单易用的选项是简单地停用您网站上的插件。您可以完成测试,然后重新激活。好的部分是该插件将保留您以前的所有设置。但是,每次想要测试一些简单的东西时,完全禁用插件并不是一个可行的解决方案。

    请记住,当您想要测试兼容性或想要测试另一个缓存插件时,您应该停用该插件。例如,如果您想测试W3 Total Cache,那么在安装W3 Total Cache插件之前先停用WP Rocket。这些缓存插件将添加像advanced-cache.php这样的插件文件,当两个插件都处于活动状态时,它们可能会相互冲突。结果,您的网站将显示白屏死机或缓存不起作用。

    转到WordPress管理面板中的“插件”部分,然后单击WP Rocket插件下的“停用”链接。单击“Skip & Deactivate”按钮可暂时停用插件而不删除缓存的内容。

    停用WP Rocket插件

    停用WP Rocket插件

    2.禁用特定页面上的插件

    大多数WordPress商业主题都提供页面构建器集成,例如Elementor和Visual Composer。使用页面构建器插件在页面上使用繁重的JavaScript时,缓存会遇到真正的问题。动态动画图表和jQuery数据表等元素可能无法与WP Rocket等激进的缓存插件一起正常工作。最好的解决方案是在缓存有问题的页面上禁用WP Rocket缓存。

    • 转到“文章”或“页面”并在古腾堡编辑器中找到您的文章并进行编辑。
    • WP Rocket将在编辑器中添加一个元框,您可以使用它来更改全局行为。如果您在边栏中没有看到元框,请单击三个点按钮并选择“首选项”。转到“面板”部分并启用“WP Rocket Options”元框。

    启用WP Rocket选项元框

    启用WP Rocket选项元框

    • 在侧边栏中看到元框后,选中“Never cache this page”选项。
    • 发布您的文章,插件将忽略所有类型的缓存页面。

    从不缓存特定页面

    从不缓存特定页面

    您也可以对您网站上的任何其他自定义文章类型执行相同的过程

    3.清除特定页面的缓存

    与排除页面类似,您可能还想简单地删除某些页面上的缓存。默认情况下,每当您更改页面内容并再次发布时,WP Rocket都会清除缓存。但是,在某些情况下,清除可能不起作用,例如当您从文章索引页面更改类别或使用第三方工具更改编辑器外部的内容时。无论如何,我们建议您在分享URL或在Google Search Console中提交之前清除该特定页面的缓存。

    • 转到“文章”部分,找到要删除旧缓存的页面。
    • 将鼠标悬停在标题链接上,然后单击“Clear this cache”选项。
    • 这将删除旧缓存,当再次访问该页面时,WP Rocket将缓存新内容。

    清除特定页面的缓存

    清除特定页面的缓存

    4.从缓存中排除页面

    如果您不想通过转到编辑器来排除页面,您也可以从插件的设置中排除。使用设置的优点是您可以使用不同的选项,如正则表达式或限制特定用户代理访问缓存页面。您可以通过转到“设置> WP Rocket”菜单并导航到“Advanced Rules”部分来忽略页面缓存。

    输入要从缓存中排除的URL

    输入要从缓存中排除的URL

    在同一设置页面上,您可以在“Never Cache User Agent(s)”部分下添加用户代理。

    5.绕过WP Rocket缓存而不停用

    有时,您想测试多个页面绕过缓存而不停用插件。

    • 只需添加?nowprocket参数和要测试访问未缓存页面绕过WP Rocket缓存的页面URL。
    • 例如,如果您的页面URL是“ https://yoursite.com/my-page/ ”,则使用“ https://yoursite.com/my-page?nowprocket ”之类的URL来访问未缓存页面的内容。

    这是绕过WP Rocket缓存并进行兼容性测试来检查页面速度的最佳方法。但是,这不会绕过通过htaccess文件应用的缓存规则。例如,WP Rocket将为浏览器缓存和GZIP压缩应用htaccess指令,当绕过?nowprocket查询时,这些指令可能仍然有效。

    6.禁用页面级缓存

    最后一个选项是永久禁用整个站点或特定页面上的页面级缓存。这是不可取的,因为页面缓存对于提高速度很重要。但是,在某些情况下,如果您有另一个与WP Rocket设置冲突的页面缓存插件,您可能需要这样做。例如,SiteGround提供自动静态缓存缓存(加上浏览器缓存和GZIP压缩)以及来自主机帐户的Nginx直接交付选项。我们已与WP Rocket支持团队确认SiteGround设置上的WP Rocket可以正常工作,没有任何冲突。

    SiteGround中的静态缓存

    SiteGround中的静态缓存

    但是,这可能不适用于所有自定义缓存设置,解决方案是禁用 WP Rocket 的页面缓存,因为您无法快速更改托管设置。不幸的是,这是一个漫长的过程,您需要根据您的要求使用不同的辅助插件。

    6.1 为特定URL启用页面缓存

    请按照以下步骤仅为您网站上的特定页面启用WP Rocket页面缓存。

    • 转到GitHub并下载WP Rocket helper插件,用于带有排除项的页面缓存。
    • 解压缩存档文件并编辑“wp-rocket-no-cache-with-exception-urls.php”文件。
    • 他们在该文件中包含了从第24行到第27行的三个示例包含URL,如下所示。您可以将“example.com/page-one/”和其他两个示例行替换为您的域的URL。如果需要,您可以在该块之间添加更多行。

    包括用于页面缓存的URL

    包括用于页面缓存的URL

    • 保存文件并将其与自述文件一起再次归档为ZIP文件夹。
    • 转到您的WordPress管理面板,上传插件并像您网站上的任何其他插件一样激活。

    现在WP Rocket不会在整个站点上进行页面缓存,除了助手插件文件中列出的URL。

    6.2 仅在特定页面上禁用页面缓存

    除了上述方式,您可以使用备用帮助插件仅在某些页面上禁用页面缓存。

    • 您可以下载帮助插件并编辑“wp-rocket-no-cache-for-page.php”文件。
    • 在这种情况下,您必须通过替换文件中的示例ID 1、2在第29行输入文章或页面ID。
    • 保存文件并再次压缩以上传到您的站点。
    • 激活插件以仅在提供的文章或页面ID上禁用页面缓存。

    在特定页面上禁用页面缓存

    在特定页面上禁用页面缓存

    6.3 完全禁用页面缓存

    如果您想毫无例外地禁用整个站点上的页面缓存,请使用此帮助插件。您可以简单地在您的网站上上传并激活它,而无需修改插件的文件内容。

    6.4 为登录用户禁用页面缓存

    上述两种方法都为未登录您网站的普通用户禁用页面缓存。但是,WP Rocket还提供了为登录用户创建单独缓存的功能。您可以在“Cache > User Caching”部分启用此选项。

    用户缓存已启用

    用户缓存已启用

    如果您想为登录用户禁用页面缓存,请使用此帮助插件。您无需修改​​内容,只需上传zip文件并激活帮助插件即可。请记住,您需要使用此插件以及上述方法之一来禁用登录和注销用户的页面缓存。

    要记住的要点

    通常,只要您的站点发生更改,WP Rocket就会清除缓存。但是,我们建议您在再次尝试测试页面之前删除以下缓存内容。

    • 通过在Windows中按“Control + Shift + Delete”和在macOS中按“Command + Shift + Delete”来删除浏览器的缓存。这将打开删除浏览历史记录弹出窗口,您可以在其中从浏览器中删除以前缓存的文件。但是,这会将您从WordPress管理面板中注销,因为会话cookie将过期。因此,请先保存所有更改并注销,然后再清除浏览器的缓存。最好的选择是使用备用浏览器进行测试,这样您就可以在不注销的情况下进行并行测试。
    • 如果在您的站点上处于活动状态,请从任何其他插件中删除缓存。如前所述,所有SiteGround站点都预装了SG Optimizer插件。因此,您需要在进行测试之前清除SG Optimizer缓存。
    • 最后,如果在您的托管服务器上处于活动状态,则清除服务器级缓存。大多数提供清漆或自定义缓存设置的托管公司就是这种情况。

    小结

    如您所见,通过在您的URL中添加参数来绕过WordPress站点中的WP Rocket缓存是一项简单的任务。您还可以从插件的全局设置或编辑器元框中排除单个页面。但是,完全禁用页面缓存或在特定页面上禁用页面缓存是一项需要帮助插件的棘手任务。确保根据您的需要选择正确的方法以获得正确的结果。