产品s
Solutions
Pricing
Compare
Resources
开发者
Support
LemonX 开发人员 · 挂钩和过滤器

以 WordPress 方式自定义 LemonX。

LemonX 旨在通过 WordPress 原生开发人员模式进行扩展。挂钩和过滤器可让您调整工作流程、修改输出、连接自定义逻辑并集成特定于站点的行为,而无需破解核心产品文件。

使用扩展点修改生成的内容、自定义架构、控制翻译行为、扩展 MCP 工具、调整 Pro 许可逻辑并构建适合您的 WordPress 环境的机构特定工作流程。

WordPress-native · add_filter 和 add_action · 产品感知 · 安全扩展模式

什么是 LemonX 挂钩和过滤器?

挂钩和过滤器是 WordPress 扩展点,LemonX 模块在 AEO、Code、Verto、MCP、Pro 和共享服务中使用它们。它们允许开发人员更改值、注册自定义行为并响应生命周期事件,同时保持 LemonX 可更新。

如果您正在跨多个站点构建特定于客户端的逻辑、插件兼容性层或机构标准,则挂钩通常是最自然的起点 – 特别是当自定义应在 WordPress 内部运行而不是通过外部应用程序运行时。

WordPress-本机可扩展性

LemonX 通过标准 WordPress 操作和过滤器公开扩展点,以便开发人员可以自定义行为而无需编辑核心插件文件。

产品感知挂钩组

挂钩围绕 LemonX 模块(AEO、Code、Verto、MCP、Pro 和共享实用程序)进行组织,因此您可以仅扩展所需的工作流程。

安全的定制模式

使用过滤器修改值,使用操作响应生命周期事件,验证回调中的权限,并在您自己的插件或 mu-plugin 中隔离自定义逻辑。

适用于 REST API 和 MCP

Hooks 补充了 REST API 集成和 MCP 工具工作流程。使用钩子进行进程内 WordPress 定制;将 REST 和 MCP 用于外部系统和 AI 代理。

过滤器与操作

知道何时修改值而不是触发副作用。

过滤器

过滤器接收一个值,让您修改它并且必须返回更新后的值。当 LemonX 生成您想要自定义的输出、配置、列表或决策时,请使用过滤器。

  • 输出前修改 JSON-LD 模式图
  • 在注册表中添加或限制 MCP 工具
  • 更改 AEO 的可分析帖子类型
  • 覆盖 Pro 功能可用性
  • 调整AI提示模板

行动

操作在 LemonX 工作流程中的特定点运行。它们不返回修改后的值。当您想要触发日志记录、同步外部系统或运行后续逻辑时,请使用操作。

  • 当 Pro 许可证更改状态时响应
  • 记录或转发表单提交
  • 观察 AI 聊天流事件
  • 在 LemonX 事件后触发代理工作流程
延伸面

Hooks、REST API 和 MCP 工具解决不同的问题。

挂钩和过滤器

  • 在 WordPress 内部扩展 LemonX
  • 自定义输出和行为
  • 添加兼容层
  • 最适合 WP 开发商和机构

REST API

  • 连接外部应用程序和仪表板
  • 远程触发工作流程
  • 拉取报告和任务状态
  • 最适合后端集成

MCP 工具

  • 赋予 AI 代理结构化功能
  • 预览并应用 WordPress 更改
  • 通过聊天客户端进行操作
  • 最适合 AI 代理工作流程

当自定义应该位于 WordPress 内部时,请使用钩子。当外部系统需要编程访问时,请使用 REST。当 AI 代理需要工具驱动的 WordPress 操作时,请使用 MCP。

挂钩参考

跨 LemonX Suite 的产品感知扩展点。

下面的钩子取自活跃的 LemonX 插件源,代表常见的开发人员扩展点。请始终根据您安装的 LemonX 版本和产品权利确认可用性。

MCP 和 AI 代理挂钩

扩展 LemonX MCP 注册表、资源、权限和写入策略。这些挂钩对于需要自定义 AI 工具或更严格的代理边界的代理机构来说至关重要。

过滤器
lemonx_MCP_tools

注册或修改可供连接的 AI 客户端使用的 MCP 工具。

$工具→数组
过滤器
lemonx_MCP_resources

添加兼容客户端可读的 MCP 资源。

$资源→数组
过滤器
lemonx_MCP_resource_read

读取 URI 时自定义资源负载。

$内容,$uri
过滤器
lemonx_MCP_allow_writes_without_pro

控制写入工具是否可以在没有 Pro 权限的情况下运行。

布尔→布尔

使用案例

  • 为客户端站点添加自定义只读审核工具
  • 将内部文档公开为 MCP 资源
  • 将编写工具限制为高级编辑
  • 注册机构特定的 AI 工作流程

LemonX Code 和前端挂钩

自定义 AI 生成、前端渲染、架构输出、模板、字体、Tailwind 配置和 LemonX Code 页面的编辑器行为。

过滤器
lemonx_editor_output_jsonld

启用或自定义页面的 JSON-LD 输出。

布尔值,$post_id → 布尔值
过滤器
lemonx_editor_frontend_source

修改页面的渲染前端 HTML 源。

$source, $post_id → 字符串
过滤器
lemonx_ai_prompt_templates

添加或覆盖 LemonX Code 使用的 AI 提示模板。

$模板→数组
过滤器
lemonx_tailwind_config

为生成的页面自定义 Tailwind 配置。

$配置→数组
过滤器
lemonx_code_require_pro

控制 LemonX Code 功能是否需要 Pro。

布尔→布尔
行动
lemonx_ai_chat_stream

观察 AI 聊天流事件以进行记录或分析。

$范围、$image_count、$history_count
行动
lemonx_form_submitted

当 LemonX 表单收到提交时做出响应。

$form_id、$data、$entry_id

使用案例

  • 为产品登陆页面注入自定义架构
  • 调整 AI 品牌语音提示
  • 在特定模板上禁用 JSON-LD
  • 同步表单在提交时会导致 CRM

LemonX AEO 和 SEO 挂钩

修改 SEO 元数据、模式图、可分析内容、社交元、索引支持和 AEO 分析工作流程使用的内容。

过滤器
lemonx_aeo_jsonld_graphs

在渲染之前修改 Schema.org 图形输出。

$图→数组
过滤器
lemonx_aeo_analyzable_post_types

控制 AEO 模块分析哪些帖子类型。

$类型 → 数组
过滤器
lemonx_aeo_post_content

在 AEO 分析运行之前修改帖子内容。

$内容,$帖子→字符串
过滤器
lemonx_aeo_title_vars

添加 SEO 标题模板中可用的变量。

$vars, $post → 数组
过滤器
lemonx_aeo_og_type

自定义帖子的开放图谱类型。

$type, $post → 字符串
过滤器
lemonx_aeo_google_indexing_supported

控制是否为帖子提供 Google 索引。

布尔值,$post → 布尔值

使用案例

  • 为利基帖子类型添加自定义架构
  • 在 AEO 分析中包含自定义字段
  • 本地化 SEO 标题变量
  • 禁用类似草稿的自定义状态的索引

LemonX Verto 翻译挂钩

Verto 同时使用 lemonx_* 集成钩子和 lxt_* 翻译钩子。可用它们控制可翻译类型、翻译决策、语言切换器和提供商行为。

过滤器
lxt_translatable_post_types

定义哪些帖子类型参与翻译工作流程。

$类型 → 数组
过滤器
lxt_should_translate_object

决定是否应翻译特定字段。

布尔值,$object_type,$object_id,… → 布尔值
过滤器
lxt_switcher_languages

修改前端语言切换器中显示的语言。

$langs, $current → 数组
过滤器
lxt_require_pro

控制 Verto 功能是否需要 Pro 权利。

布尔→布尔
过滤器
lemonx_aeo_translated_stored_schema

控制翻译内容的存储架构行为。

布尔值,$post,$locale → 布尔值

使用案例

  • 从翻译中排除内部帖子类型
  • 跳过法律样板字段的翻译
  • 在切换器中重新排序语言
  • 应用特定于区域设置的架构规则

LemonX Pro 和许可挂钩

为 LemonX Pro 部署自定义权利检查、产品列表、更新渠道、许可证生命周期事件和门户 URLs。

过滤器
lemonx_pro_feature_allowed

允许或拒绝访问 Pro 门控功能。

布尔值,$feature,$entitlement → 布尔值
过滤器
lemonx_pro_products

修改 Pro 暴露的 LemonX 产品列表。

$产品 → 数组
过滤器
lemonx_pro_features

修改可通过 Pro 获得的功能标志。

$features → 数组
过滤器
lemonx_pro_update_channel

在稳定版、测试版或自定义源之间切换更新渠道。

$通道→字符串
行动
lemonx_pro_license_changed

当许可证状态更改时运行逻辑。

$状态,$权利

使用案例

  • 在客户网站上授予仅限代理机构的功能
  • 将许可证更改同步到外部计费
  • 使用自定义更新通道进行暂存
  • 在仪表板中公开自定义产品包

共享实用程序和兼容性挂钩

用于 AI 断路器、HTTP 安全、Shield 集成、字体、CDN 行为和其他共享 LemonX 基础设施的横切挂钩。

过滤器
lemonx_ai_circuit_failure_threshold

调整 AI 断路器故障阈值。

整数 → 整数
过滤器
lemonx_allow_internal_HTTP

需要时允许受控的内部 HTTP 请求。

布尔值,$url → 布尔值
过滤器
lemonx_self_host_fonts

控制 LemonX Code 中的自托管字体行为。

布尔→布尔
过滤器
lemonx_shield_extra_header_hooks

注册额外的 Shield 标头注入点。

$hooks → 数组
过滤器
lemonx_editor_register_elementor_locations

控制 Elementor 位置注册兼容性。

布尔→布尔

使用案例

  • 调整高流量站点上的 AI 可靠性
  • 允许在安全环境中进行内部 API 调用
  • 为自定义模板添加 Shield 规则
  • 不需要时禁用 Elementor 集成
常见模式

从这些扩展模式开始。

使用lemonx_MCP_tools 将工具附加到 MCP 注册表。保持工具定义结构化并具有权限意识。

在 LemonX 输出 JSON-LD 之前修改模式图。对于电子商务、本地业务或自定义帖子类型规则很有用。

使用 Verto 翻译过滤器跳过应保持未翻译的字段或对象。

操作非常适合消除副作用,例如将许可证状态同步到外部系统。

最佳实践

构建可靠的 LemonX 扩展。

不要编辑 LemonX 核心文件

将自定义内容放入特定于站点的插件、mu 插件或子主题中,这样更新就不会覆盖您的更改。

仅使用已记录的挂钩

首选 LemonX 开发人员文档和源代码中引用的挂钩。未记录的内部结构可能会在版本之间发生变化。

从过滤器返回值

每个过滤器回调必须返回修改后的值。忘记返回值是最常见的扩展错误之一。

验证回调中的权限

在更改写入行为、工具或发布逻辑之前,请检查 current_user_can() 或等效功能规则。

保持回调轻量级

繁重的工作属于排队作业、REST 端点或异步任务,而不是在每个页面渲染上运行的过滤器中。

首先进行分期测试

挂钩更改可能会影响 SEO 输出、AI 工具、翻译和许可。始终在生产前对暂存进行验证。

为您的团队记录自定义挂钩

机构应维护自定义 LemonX 挂钩、所有者和受影响的客户站点的内部列表。

版本化您的自定义插件

跟踪您的自定义项经过测试的 LemonX 版本,并在重大升级后重新测试。

反模式

避免这些常见错误。

直接编辑插件源更改将在更新时丢失,并且可能会破坏支持范围。
未经审查即删除默认工具剥离 MCP 工具或 Pro 功能可能会破坏预期的 LemonX Suite 工作流程。
无界过滤递归在过滤器内调用 LemonX 函数(这些函数会触发这些函数)可能会导致无限循环。
绕过能力检查切勿仅仅为了使自动化更容易而强制启用安全敏感过滤器。
依赖未记录的内部结构私有函数和未列出的钩子不是稳定的扩展表面。
兼容性

自定义 LemonX 代码应该存在的位置。

  • 使用专用插件:为 LemonX 挂钩创建一个小型自定义插件,以便它们可以跨环境移植。
  • 优选过滤器来改变输出:SEO 字段、模式、前端 HTML 和工具列表通常应使用过滤器进行修改。
  • 首选集成操作:CRM 同步、日志记录、通知和外部 Webhook 更适合操作。
  • 与 REST 和 webhooks 结合使用:挂钩处理进程内 WordPress 逻辑; REST 和 webhooks 处理外部系统协调。
  • 检查 Pro 和产品权利:某些挂钩会影响仍需要相关 LemonX 产品或 Pro 计划才能激活的功能。
工作流程示例

开发人员可以使用钩子和过滤器构建什么?

工作流程1

代理MCP定制

目标:为每个客户端站点提供自定义 AI 工具,而无需分叉 LemonX MCP。

  1. 使用lemonx_MCP_tools注册工具
  2. 使用lemonx_MCP_allow_writes_without_pro限制写入
  3. 通过自定义操作处理程序记录活动
  4. Claude Desktop或光标中的测试工具

结果:客户站点保留标准 LemonX MCP,而您的机构则添加安全的、有范围的自定义工具。

工作流程2

帖子类型的自定义架构

目标:输出 AI 搜索页面中使用的自定义帖子类型的专用 Schema.org 数据。

  1. 挂钩lemonx_aeo_jsonld_graphs
  2. 检测回调内的帖子类型
  3. 追加或修改图节点
  4. 验证丰富结果或 AEO 工具中的输出

结果:AEO 和搜索系统接收与您的内容模型一致的结构化数据。

工作流程3

翻译治理

目标:翻译营销页面,但保持法律和定价页脚不变。

  1. 使用 lxt_should_translate_object 跳过字段
  2. 如果需要,调整 lxt_translatable_post_types
  3. 查看 Verto 队列结果
  4. 验证 hreflang 和本地化 SEO 输出

结果:多语言工作流程保持快速,同时敏感内容在各个区域保持一致。

工作流程4

许可证感知功能推出

目标:仅对具有有效 Pro 许可证的机构管理的客户端站点启用测试版功能。

  1. 挂钩lemonx_pro_feature_allowed
  2. 检查权利负载
  3. 允许每个计划选择的功能
  4. 收听lemonx_pro_license_changed以进行缓存清除

结果:功能访问与许多站点的计费和部署策略保持一致。

扩展 LemonX 而不破坏可更新性。

使用记录的挂钩和过滤器来自定义 AI 工作流程、SEO 输出、翻译行为、MCP 工具和 Pro 许可 – 同时保持 LemonX 核心可维护。

挂钩和过滤器常见问题解答

LemonX 中的钩子和过滤器有什么区别?
在 WordPress 术语中,过滤器修改并返回值;操作在生命周期点运行而不返回主值。 LemonX 在其模块中使用这两种模式。
我应该在哪里放置自定义 LemonX 挂钩代码?
使用自定义插件、mu-plugin 或子主题。不要直接编辑 LemonX 核心插件文件。
我可以用钩子扩展 MCP 工具吗?
是的。lemonx_MCP_tools过滤器是添加或修改暴露给AI客户端的MCP工具的主要扩展点。
hooks 可以代替 REST API 吗?
不会。Hooks 在 WordPress 内自定义行为。 REST API 用于外部应用程序和远程集成。他们相辅相成。
所有 LemonX 钩子都是公共且稳定的吗?
记录的开发人员挂钩旨在用于扩展。未记录的挂钩或内部函数可能会在版本之间发生变化。
挂钩是否绕过 LemonX 权限?
不会。您的回调仍然在 WordPress 和 LemonX 权限规则内运行。不要使用钩子来绕过功能检查。
我可以使用钩子来修改 SEO 和 Schema 输出吗?
是的。 AEO 过滤器(例如lemonx_aeo_jsonld_graphs、lemonx_aeo_title_vars 和lemonx_aeo_post_content)是常见的扩展点。
Verto 使用lemonx_ 或lxt_ 钩子吗?
两者皆有。 LemonX 集成点可能使用lemonx_* 名称,而Verto 转换行为通常使用lxt_* 过滤器。
我的钩子会在 LemonX 更新后继续存在吗?
是的,如果它们依赖于记录的扩展点和外部核心插件文件。重大升级后重新测试。
机构可以使用挂钩进行多站点工作流程吗?
是的。机构经常使用钩子来标准化 MCP 工具、模式规则、翻译策略和跨客户端站点的许可行为。

构建您的团队可以维护的 WordPress AI 工作流程。

将挂钩和过滤器与 REST API、MCP 工具、身份验证和 Webhook 相结合,创建适合您的机构、产品团队或企业 WordPress 堆栈的开发人员平台。

WhatsApp+44 7724 592551