
Yoast SEO 27.8 版本针对大型网站推出了显著的性能优化,包括根站点地图和作者站点地图的加载时间大幅缩短。通过优化数据库查询逻辑,在拥有200万用户的测试站点上,根站点地图加载时间从超过300秒降至25毫秒。
在最新的 Yoast SEO 27.8 版本中,我们引入了一系列性能优化措施,旨在全面减少插件各功能的加载时间。这些优化对于拥有大量文章和用户的大型网站效果尤为显著。
注意: 本文包含技术细节和实现说明,适合开发者和高级用户阅读。
Yoast 开发团队始终将提供低服务器开销、快速加载的精良软件作为首要目标。然而,Yoast SEO 安装在全球数百万个网站上,我们必须针对各种不同的配置进行优化。这意味着我们需要持续寻找插件性能优化的空间。我们过去一直这样做,例如在 2023年2月改进数据库系统 时。
27.8 版本正是这些针对性审查的成果之一。我们特意选择了那些在规模扩展时性能瓶颈最明显的功能,并对它们进行了精简和加速改造。从修改查询以加速拥有大量用户的网站页面,到削减管理后台中针对大量文章站点的繁重操作,再到减少对数据库的多次往返调用,并普遍应用性能最佳实践——这个版本旨在全面提升 Yoast SEO 插件中的用户体验和开发者体验。
我们还将在此提供本版本改进的技术摘要,深入探讨其细节,因为提高对性能最佳实践的认识总是有益的(更不用说讨论代码本身就是一件有趣的事)。
背景:为了让 Yoast SEO 在输出根站点地图时计算作者站点地图的最后修改时间(Last Modified),它需要用到所有有资格被包含在作者站点地图中的用户的 usermeta。
传统上,计算符合条件的用户是通过检查用户权限(capability)来实现的。这通过在 get_users() 调用中添加 'capability' => ['edit_posts'] 参数来完成。结果,这触发了一个非常繁重的查询,包含多个 JOIN 且没有使用数据库索引。
具体来说,生成的查询会添加如下子句:
AND ((((mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"edit\\_posts"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"administrator"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"editor"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"author"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"contributor"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"wpseo\\_manager"%')
OR (mt1.meta_key = 'wp_capabilities'
AND mt1.meta_value LIKE '%"wpseo\\_editor"%'))))
由于 LIKE '%...%' 无法使用任何 B-tree 索引,MySQL 必须完整读取每个匹配的 wp_capabilities 行,并对每行进行七次序列化 PHP meta_value 的子字符串扫描。
通过将计算条件从检查权限改为查找拥有已发布文章的用户(使用 'has_published_posts' => true 参数),我们立即将生成的查询转换为使用索引的查询,从而在拥有大量用户的网站上表现更佳。
事实上,在我们的一次测试中,在一个拥有约 200 万用户的网站上,每次查询完成的时间(即根站点地图渲染所需的时间)从超过 300 秒下降到仅 25 毫秒!这意味着,这一改变有望在类似网站上大幅缩短根站点地图的加载时间。
最后,考虑到 'has_published_posts' => true 参数已在站点地图生成的后续阶段中使用,此更改对功能的实际影响微乎其微,甚至没有负面影响。
对于 Yoast SEO 渲染作者站点地图,它需要计算符合条件的用户。在拥有大量用户的网站上,这可能是一个非常繁重的操作。除了上述优化之外,我们还注意到,当 Yoast SEO 计算符合条件的用户时,它还会添加一个元查询(meta query)来检查每个用户的 user_level 是否大于 0。
结果发现,这是旧时代的遗留物,因为 自 WordPress 3.0 起,user_level 框架已被 WP 核心弃用(参见 WordPress User Levels 文档)。虽然这并没有破坏我们的站点地图功能,但它不必要地在生成的查询中添加了一个 INNER JOIN,在拥有非常庞大的 user 和 usermeta 表的网站上,这会降低性能。因此,我们移除了这个不必要的 JOIN。
除了上述两项核心优化外,27.8 版本还包含以下改进:
Yoast SEO 27.8 版本专注于为大型网站提供更快的加载速度和更低的服务器负载。通过针对性地优化根站点地图和作者站点地图的查询逻辑,我们实现了显著的性能提升。这些改进不仅提升了用户体验,也为开发者提供了更高效的代码基础。
我们鼓励所有用户更新到最新版本,尤其是那些运营大型网站的站长。如果您有任何反馈或问题,请随时联系我们的支持团队。
SEO & GEO 技术探索者,专注于搜索引擎优化和生成式引擎优化。

WordPress 7.0 于2026年5月发布,带来七大核心更新:现代化后台界面、可视化版本修订、新增区块、响应式设计控制、智能模板编辑、AI工具集成及插件过滤功能。本文深入解析每项亮点,并探讨其对Yoast SEO用户的实用价值。

本文深入解析AI品牌提及与引用的核心区别,以及如何利用Yoast SEO优化策略提升品牌在AI搜索中的曝光度和权威性。

Yoast 2026年4月SEO更新回顾:AI代理、谷歌核心更新与搜索信任信号。了解谷歌新推出的AI代理基础设施、结构化数据演进、核心更新收紧,以及为什么单纯发布更多内容已不再有效。获得可操作建议,优化你的网站以适应AI优先搜索。
获取最新的 SEO 与 GEO 技术资讯。
我们尊重您的隐私,随时可以取消订阅。