Yoast SEO 开发者文档

title: "Integrating" post_status: publish comment_status: open taxonomy: category: - yoast-developer post_tag: - Development - Repos - Data


本文档是描述集成 Yoast SEO 所需技术规范和要求的中心。

自动优化

当软件安装并激活后,必须自动且无需用户干预地满足以下标准。

系统行为

集成

元数据与输出

元标签

所有页面和内容类型都应按照以下标准输出元数据:

结构化数据

所有页面都应按照以下标准输出结构化数据:

控制与分析

对于所有文章、页面和内容类型,用户必须能够:

与我们的 Yoast SEO 内容分析集成

当前设置

目前,我们的许多分析深度集成于 WordPress 或 Shopify 集成中。 在此,我们说明 Yoast SEO 插件如何与(默认)区块编辑器、经典编辑器以及 Elementor 集成。 出于可理解的原因,我们专注于免费开源 WordPress 插件 Yoast SEO 的相关部分。

PHP 集成

在 PHP 端,我们使用 Metabox 的概念来处理内容分析的不同部分。这个命名略有不当,因为它们既用于我们的 Yoast SEO metabox(在经典编辑器和区块编辑器中),也用于 Yoast SEO 侧边栏(在区块编辑器、Elementor 编辑器和 Shopify 应用中)。更多详情请参考文章相关代码分类法相关代码。我们目前正在解耦 metabox 和侧边栏,请持续关注相关更新。

Elementor 集成展示了如何将这些 Metabox 单元集成到其他页面(本例中是 Elementor 编辑文章页面,参见 Elementor_Edit_Conditional),并实现了 Integration_Interface。它还展示了如何加载额外的脚本和样式(参见 register_hooks)。

JavaScript 集成

在 JavaScript 端,起点是 packages/js/src/post-edit.jsGitHub 链接),它初始化了元框及其行为(initTabsinitAdminMediainitAdmininitializeInsightsinitializeAiGenerator)、Redux 存储的初始化(initEditorStore),以及与编辑器各部分的集成: * 与编辑器整体的集成(initEditorIntegration)。这里有针对默认块编辑器经典编辑器的实现。这些集成确保侧边栏显示并激活高亮功能。 * 一个更新编辑器数据并链接 Yoast SEO 内容分析的抓取器(initPostScraper) * 与主要分类元素的集成(initPrimaryCategory) * 与特色图片元素的集成(initFeaturedImageIntegration

term-edit.jsGitHub 链接)中,我们为分类术语提供了非常相似的集成,但省略了不适用于术语的元素的集成。

对于与其他编辑器的集成,例如 packages/js/src/elementor.js 中的 Elementor,我们采用了非常相似的方法(参见此代码)。不过存在一些细微差别: - 我们使用监视器(initElementorWatcher)而非抓取器来更新编辑器存储。 - YoastSEO 分析应用的设置(参见文章抓取器中的 initializePostAnalysis)在集成中完成,而非在监视器中。 - 有一些额外代码用于向新用户介绍 Yoast SEO 集成(initializeIntroduction)。 - 侧边栏的渲染通过 initElementorEditorIntegration 处理。

未来规划

在(希望不久的)将来,我们期望逐步将分析工具与其各自的后端解耦,并创建一个“独立”编辑器。 我们的目标是使其易于在任何内容编辑环境中实现,只需将其“指向”相关字段(并根据用户设置和控件“连接”相应的后端行为)。

资源

请注意,这些资源应被视为正在进行中的工作,在生产环境中可能不稳定。 如果您遇到问题或错误,我们鼓励您在相应的代码仓库中创建问题,和/或贡献修复和补丁。