WordPress 多站点配置工具
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的指引,为 AI 助手安装 @user_3c6cb52e/wp-multisite-provisioner-agent 技能。
技能介绍
问题:手工建站点重复且易错
在 WordPress Multisite 网络里新增一个站点,看起来只是填几张表单,实际操作却散落在多处:在网络后台注册站点、等待 DNS 解析生效(子域名方案下)、逐个站点启用主题和插件,再回到各站的「设置 → 常规」里确认 siteurl 与 home。任何一步遗漏,轻则站点 404,重则主题与插件状态和网络策略不一致。当站点需要批量创建——例如按客户或租户逐个开站——手工操作的成本会随数量线性上涨,而且没有可复现的审计记录。
工具如何工作
这个技能用两条互补的路径,把「创建站点 + 统一配置」压缩成可重复执行的动作:
- 底层 API 建站:调用
wp_insert_site()直接写入wp_blogs记录,或者通过 Sites REST API 走网络侧请求。前者适合需要自行控制返回值与异常处理的脚本化场景;后者更贴近 HTTP 调用方,便于从外部系统触发。 - 切换上下文并配置:站点建好后用
switch_to_blog()把后续操作切到目标站点上下文,在其中统一设置主题、插件与站点选项,完成后再切回主站点。这样一套配置代码可以原样复用于每个新站点,不必为每个站点改写条件分支。 - 路由模式选择:在子域名(subdomain)与子目录(subdirectory)两种路由之间二选一。子域名需要泛域名 DNS 记录先行就位,子目录对 DNS 没有额外要求,但 URL 结构更长。技能把这一选择暴露为显式配置项,而不是藏在默认值背后。
适用边界与注意点
- 本技能只负责站点创建与初始配置,不涉及 WordPress 核心升级、SSL 证书签发、备份或流量分流。网络层的 nginx/Apache 重写规则仍需自行维护。
- 子域名模式下的泛域名 DNS 与 TLS 通常不是代码能覆盖的部分,建议先验证再批量执行。
switch_to_blog()会改变全局上下文,在循环中创建多个站点时要注意清理过滤器与钩子,避免上一个站点的设置泄漏到下一个站点。- 资料中没有自动提取到可追溯的安装与使用说明,上游仓库也未提供完整文档。接入生产流程前,建议先通读上游实现,确认调用方式与参数范围,再在测试环境跑通一遍。
使用场景
- 维护 WordPress 多站点网络,需要批量创建子域名站点并统一指定主题与插件
- 为客户逐个开通独立站点,用脚本替代网络后台的重复表单填写操作
- 多站点项目要新建一批子目录站点,用代码一次性完成站点注册与基础配置
- 跨系统触发建站任务时,通过 Sites REST API 创建站点并返回结构化结果
适合人员
- 运营多站点网络的后端工程师,需要可复现的站点创建脚本替代手工后台操作
- 为客户提供独立站点的外包团队,希望按租户批量开通并套用统一的插件组合
- 为 WordPress 项目写自动化工具的开发者,要在脚本里完成站点注册与上下文切换
- 搭建企业内多站点平台的运维工程师,需要通过接口触发建站并收集失败信息