WordPressPlayground wp-playground

WordPress Playground 是一个用于快速创建、测试和调试WordPress插件、主题及配置的轻量级沙盒环境工具。它支持在浏览器或本地CLI中一键启动一次性WordPress实例,自动挂载代码,切换WP/PHP版本,运行JSON蓝图脚本,构建可分享的快照,并集成Xdebug进行代码调试。关键词:WordPress开发,插件测试,主题调试,沙盒环境,蓝图脚本,Xdebug,CI/CD,快照分享。

测试 0 次安装 0 次浏览 更新于 3/2/2026

name: wp-playground description: “用于WordPress Playground工作流:在浏览器或通过@wp-playground/cli本地快速创建一次性WP实例(server、run-blueprint、build-snapshot),自动挂载插件/主题,切换WP/PHP版本,使用蓝图,以及调试(Xdebug)。” compatibility: “目标环境WordPress 6.9+(PHP 7.2.24+)。Playground CLI需要Node.js 20.18+;在WebAssembly中使用SQLite运行WP。”

WordPress Playground

使用场景

  • 快速启动一个一次性WordPress实例来测试插件/主题,无需完整环境搭建。
  • 本地运行或迭代Playground蓝图(JSON)。
  • 构建可复现的站点快照用于分享或CI。
  • 快速切换WP/PHP版本以复现问题。
  • 在隔离的Playground环境中使用Xdebug调试插件/主题代码。

所需输入

  • 主机准备:Node.js ≥ 20.18,npm/npx可用。
  • 要挂载的项目路径(--auto-mount或显式挂载映射)。
  • 期望的WP版本/PHP版本(可选;默认为最新WP,PHP 8.3)。
  • 蓝图文件位置/URL(如果运行蓝图)。
  • 端口偏好(如果9400冲突)。
  • 是否需要Xdebug。

操作流程

0) 注意事项

  • Playground实例是临时的且基于SQLite;切勿指向生产数据。
  • 运行CLI前确认Node ≥ 20.18(node -v)。
  • 如果挂载本地代码,确保其中不包含敏感信息;Playground会将文件复制到内存文件系统中。

1) 快速本地启动(自动挂载)

cd <插件或主题根目录>
npx @wp-playground/cli@latest server --auto-mount
  • 默认在 http://localhost:9400 打开。自动检测插件/主题并安装。
  • 根据需要添加 --wp=<版本> / --php=<版本>
  • 对于已存在的经典完整安装,添加 --skip-wordpress-setup 并挂载整个目录树。

2) 手动挂载或多挂载点

  • 当自动挂载不满足需求时(多插件、mu-plugins、自定义内容),使用 --mount=/主机路径:/虚拟文件系统路径(可重复)。
  • 使用 --mount-before-install 在安装前挂载,用于引导安装流程。
  • 参考:references/cli-commands.md

3) 运行蓝图(无需服务器)

npx @wp-playground/cli@latest run-blueprint --blueprint=<文件或URL>
  • 用于脚本化设置/CI验证。支持远程URL和本地文件。
  • 当需要时,使用 --blueprint-may-read-adjacent-files 允许本地蓝图读取相邻的资产文件。
  • 有关结构和常用标志,请参阅 references/blueprints.md

4) 构建快照用于分享

npx @wp-playground/cli@latest build-snapshot --blueprint=<文件> --outfile=./site.zip
  • 生成一个ZIP文件,可在Playground中加载或附加到错误报告中。

5) 使用Xdebug调试

  • 使用 --xdebug(或根据CLI版本使用 --enable-xdebug)启动以暴露IDE密钥,然后按照CLI输出中显示的主机/端口连接VS Code/PhpStorm。
  • 结合 --auto-mount 进行插件/主题调试。
  • 清单:references/debugging.md

6) 版本切换

  • 使用 --wp= 固定WP版本(例如,6.9.0),使用 --php= 测试兼容性。
  • 如果功能依赖于Gutenberg主干版本,优先选择最新的WP版本加上插件(如果可用);Playground镜像跟踪稳定的WP版本以及捆绑的Gutenberg。

7) 纯浏览器工作流(无需CLI)

  • 使用URL片段或查询参数启动快速预览:
    • 片段:https://playground.wordpress.net/#<base64或json蓝图>
    • 查询:https://playground.wordpress.net/?blueprint-url=<公开URL或zip>
  • 使用实时蓝图编辑器(playground.wordpress.net)借助模式帮助编写蓝图;粘贴JSON并复制可分享的链接。

验证

  • 验证挂载的代码已激活(插件已列出/激活;主题已选择)。
  • 对于蓝图/快照,使用 --verbosity=debug 重新运行以确认步骤已执行。
  • 运行针对性冒烟测试(例如,通过浏览器终端在Playground shell内运行 wp plugin list)或UI点击路径。

故障模式 / 调试

  • CLI退出并抱怨Node版本:升级到 ≥ 20.18。
  • 挂载未生效:检查路径,使用绝对路径,添加 --verbosity=debug
  • 蓝图无法读取本地资产:添加 --blueprint-may-read-adjacent-files
  • 端口已被占用--port=<空闲端口>
  • UI缓慢/卡顿:如果启用了 --experimental-multi-worker 则禁用它;或者启用它以改善CPU密集型运行的吞吐量。

升级/替代方案

  • 如果需要PHP扩展或原生数据库访问,Playground可能不适用;回退到完整的WP堆栈或wp-env/Docker。
  • 有关纯浏览器嵌入或VS Code扩展的具体细节,请查阅上游文档:https://wordpress.github.io/wordpress-playground/