WordPress AI布局管理插件

Pro Extended (PE) 是一个WordPress插件,扩展了Pro Theme和Cornerstone页面构建器的功能,通过MCP服务器、开发者工具和CLI命令使AI代理能够程序化地读取、创建和管理Cornerstone布局。

  • by renandadalte
  • PHP
  • 本地部署
  • 10 星标
  • 更新于
在 GitHub 查看 renandadalte/wpdev-pro-extended

使用说明

专业扩展(PE)

扩展 专业主题 和Cornerstone页面构建器 MCP服务器、开发人员工具和CLI命令——使AI代理能够以编程方式读取、创建和管理Cornerstone布局。


这是什么?

专业扩展 连接您的WordPress网站(正在运行 专业主题 /基石)到人工智能助手 克劳德, ChatGPT, 双子座,其他通过 模型上下文协议(MCP).

在实践中,这意味着您可以要求您的AI助手:

  • 📄 创建页面 具有完整的基石布局
  • 🎨 阅读并修改 现有布局、页眉、页脚和全局块
  • 🔍 检查 元素模式、颜色、字体和站点配置
  • 💾 备份和恢复 零数据丢失风险的布局

不需要编码经验——如果你能安装一个WordPress插件并遵循一些配置步骤,你就可以开始了。


快速开始

需求

  • WordPress 6.5+
  • Pro主题6.x+(或Pro的儿童主题)
  • PHP 8.1+

安装

选项A——通过WordPress管理员上传(最简单)

  1. 下载最新版本 作为 .zip 文件。
  2. 在您的WordPress管理员中,转到 插件→ 添加新插件→ 上传插件.
  3. 选择已下载的 .zip 文件并单击 立即安装.
  4. 安装后,单击 激活插件.

就是这样——没有终端,没有额外的步骤。该插件包括一个内置的自动加载器。

选项B——Git克隆(适用于开发人员)

# Clone into your plugins directory
cd wp-content/plugins/
git clone https://github.com/renandadalte/wpdev-pro-extended.git

# Activate via WP-CLI
wp plugin activate wpdev-pro-extended

连接MCP客户端

为了让你的人工智能助手与你的WordPress网站进行交互,你需要两件事:

  1. 应用程序密码 --转到您的WordPress管理员→ 用户→ 您的个人资料 → 向下滚动到 应用程序密码.输入名称(例如“MCP”)并单击 添加新应用程序密码。复制生成的密码。

  2. Base64编码的凭据字符串 --MCP服务器使用HTTP 基本身份验证。你需要对你的 username:password 在Base64中配对。

    如何生成Base64字符串:

    # macOS / Linux:
    echo -n "your_wp_username:xxxx xxxx xxxx xxxx xxxx xxxx" | base64
    
    # Windows (PowerShell):
    [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("your_wp_username:xxxx xxxx xxxx xxxx xxxx xxxx"))
    

    或者使用任何在线Base64编码器——只需对字符串进行编码 your_wp_username:your_application_password (带结肠分离器)。

  3. 将服务器添加到IDE的MCP配置中:

    Antigravity (Google Gemini)

    编辑 ~/.gemini/antigravity/mcp_config.json:

    {
      "mcpServers": {
        "pro-extended": {
          "serverUrl": "https://your-site.com/wp-json/pro-extended/v1/mcp",
          "headers": {
            "Authorization": "Basic YOUR_BASE64_STRING_HERE"
          }
        }
      }
    }
    

    备注:反重力用途 serverUrl (camelCase)而不是 url.

    Cursor

    编辑 .cursor/mcp.json 在项目根目录(或全局设置)中:

    {
      "mcpServers": {
        "pro-extended": {
          "url": "https://your-site.com/wp-json/pro-extended/v1/mcp",
          "headers": {
            "Authorization": "Basic YOUR_BASE64_STRING_HERE"
          }
        }
      }
    }
    
    Claude Desktop

    编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

    {
      "mcpServers": {
        "pro-extended": {
          "url": "https://your-site.com/wp-json/pro-extended/v1/mcp",
          "headers": {
            "Authorization": "Basic YOUR_BASE64_STRING_HERE"
          }
        }
      }
    }
    
    VS Code (GitHub Copilot / Other MCP Clients)

    编辑 .vscode/mcp.json 在项目根目录中:

    {
      "servers": {
        "pro-extended": {
          "url": "https://your-site.com/wp-json/pro-extended/v1/mcp",
          "headers": {
            "Authorization": "Basic YOUR_BASE64_STRING_HERE"
          }
        }
      }
    }
    

    备注:VS代码使用 servers 而不是 mcpServers 作为根密钥。

[!重要] 替换 YOUR_BASE64_STRING_HERE 使用您在步骤2中生成的Base64编码字符串。 不要直接粘贴您的用户名和密码 --它必须是Base64编码版本。

  1. 重新启动IDE。您的AI代理现在可以列出元素、读取布局、创建页面等。

WP-CLI使用

wp pe mcp test                                          # Verify MCP server
wp pe mcp tools                                         # List all 14 tools
wp pe mcp call get_site_info --user=1                   # Call any tool
wp pe layout list                                       # List all layouts
wp pe layout export 42 --output=homepage.json           # Export layout to JSON
wp pe layout backup 42                                  # Create backup
wp pe layout restore 42                                 # Restore from backup

能力

MCP工具(14)

工具 类型 描述
list_elements 阅读 列出所有具有组和有效子元素的Cornerstone元素类型
get_element_schema 读取 获取特定元素类型的完整架构(属性、默认值、选项)
list_layouts 阅读 列出所有布局(页面、页眉、页脚、全局块等)
get_layout 读取 获取包含元数据和校验和的完整布局JSON
validate_layout 读取 根据元素模式和层次结构规则验证布局结构
list_colors 阅读 获取Cornerstone全球调色板
list_fonts 阅读 获取注册字体定义和配置
get_site_info 阅读 获取WordPress、主题、基石版本和断点配置
create_page 写入 使用可选的基石布局数据创建新页面
deploy_layout 写入 将布局数据写入帖子(自动备份+验证)
backup_layout 写 创建带时间戳的备份(每篇帖子最多10个)
restore_layout 写入 从备份还原
clear_cache 写入 清除基石TSS缓存(按帖子或全局)
update_layout 写入 应用补丁操作(添加/删除/更新元素)

MCP资源(3)

URI 描述
pe://schema/elements 完整元素定义(缓存)
pe://schema/hierarchy 有效的父子关系图
pe://colors/palette 当前调色板

WP-CLI命令

命令 描述
wp pe layout list 列出所有基石布局
wp pe layout export <id> 将布局导出到JSON文件
wp pe layout import <file> 从JSON文件导入布局
wp pe layout backup <id> 创建布局备份
wp pe layout restore <id> 从备份还原布局
wp pe mcp test 验证MCP服务器是否正常运行
wp pe mcp tools 列出已注册的MCP工具
wp pe mcp call <tool> 直接调用工具

建筑

插件结构

wpdev-pro-extended/
├── wpdev-pro-extended.php       # Bootstrap, Pro Theme dependency guard, PSR-4 autoloader
└── src/
    ├── Plugin.php               # Service container (lazy-loaded)
    ├── Layouts/
    │   └── LayoutService.php    # Read/write/backup/restore for 3 storage formats
    ├── Elements/
    │   ├── SchemaExtractor.php  # Wraps cornerstone('Elements') with transient cache
    │   ├── HierarchyValidator.php  # Layout validation engine
    │   └── ValidationResult.php
    ├── Mcp/
    │   ├── Server.php           # JSON-RPC 2.0 router
    │   ├── Transport/
    │   │   └── StreamableHttp.php  # REST API endpoint (POST)
    │   ├── Tools/               # 14 tool implementations
    │   │   ├── ToolInterface.php
    │   │   ├── ListElements.php
    │   │   ├── GetElementSchema.php
    │   │   ├── ...
    │   │   └── UpdateLayout.php
    │   └── Resources/           # 3 resource implementations
    │       ├── ResourceInterface.php
    │       ├── ElementSchemaResource.php
    │       ├── HierarchyResource.php
    │       └── ColorPaletteResource.php
    └── Commands/
        ├── LayoutCommand.php    # wp pe layout *
        └── McpCommand.php       # wp pe mcp *

MCP协议

服务器实现 MCP 2025-03-26 通过 可流式传输的HTTP 运输:

  • 端点: POST /wp-json/pro-extended/v1/mcp
  • 协议:JSON-RPC 2.0
  • 认证:WordPress应用程序密码(基本身份验证)
  • 能力检查:按工具(edit_posts 对于阅读, manage_options 写)

基石数据处理

该插件处理所有三种Cornerstone存储格式:

帖子类型 存储 格式
page, post _cornerstone_data meta 内联树(嵌套 _modules)
cs_header, cs_footer, cs_layout_* post_content 带区域的内联树
cs_global_block post_content 平面地图(键入 _id)

关键安全模式 应用:

  • wp_slash(wp_json_encode($data)) 之前 update_post_meta() --防止WordPress破坏JSON转义
  • $wpdb 用于原始备份 --保留精确的字节级编码
  • _bp_data 验证 --确保断点数组是连续的(5元素,空填充),以防止 TypeError: t[i] is not iterable 在Cornerstone的React应用程序中

安全

  • 所有端点都需要WordPress身份验证(应用程序密码)
  • 阅读工具需要 edit_posts 能力
  • 需要编写工具 manage_options 能力
  • 所有工具参数的输入验证
  • 写入前的布局结构验证
  • 破坏性操作前的自动备份
  • 零外部依赖——可移植,无供应链风险

路线图

✅ v1.0.0-α(当前)

  • 具有流式HTTP传输的MCP服务器
  • 用于元素/布局管理的14个工具(8个读+6个写)
  • 3个用于模式和调色板数据的MCP资源
  • 用于布局管理和MCP测试的WP-CLI命令
  • 布局备份/恢复系统
  • 层次结构和断点数据验证

🔜 v1.1--设计令牌和设置同步

  • 设计令牌系统:集中式令牌注册表、CSS自定义属性输出、管理UI
  • 设置同步:用于版本控制设置的ACF风格JSON导出/导入
  • MCP速率限制:基于瞬态的请求限制

🔮 v1.2--扩展功能

  • 元素默认值管理器:用于设置基石元素默认值的管理UI
  • 颜色审核和替换:CLI工具,用于查找和替换具有全局调色板引用的硬编码颜色
  • 布局版本控制:Git友好的JSON导出,支持diff

支持

如果你觉得这个项目有用,可以考虑支持它的开发:


贡献

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/my-feature)
  3. 提交您的更改(git commit -m 'feat: add my feature')
  4. 推到分支(git push origin feature/my-feature)
  5. 打开拉取请求

请遵循 约定式提交 用于提交消息。


许可证

该项目根据 GPL-2.0或更高版本 许可证。