Intervention + Bedrock:在 Composer 项目中优雅管理 WordPress 配置 📅 发布时间:2026/8/23 10:19:36 👁 浏览次数: Intervention Bedrock在 Composer 项目中优雅管理 WordPress 配置【免费下载链接】interventionWordPress plugin to configure wp-admin and application state using a single config file.项目地址: https://gitcode.com/gh_mirrors/in/interventionIntervention是一款 WordPress 插件让你用单个配置文件统一管理 WordPress 后台wp-admin界面与应用状态Application State特别适合 Bedrock、Sage 等基于 Composer 的项目——把散落在数据库里的站点配置代码化纳入版本控制。为什么 Composer 项目需要配置管理传统 WordPress 的站点标题、固定链接、时区、评论策略等设置都藏在数据库里带来三个典型痛点无法版本控制多环境开发/ staging / 生产配置不一致难以追溯后台可随意修改客户或编辑可能在 wp-admin 里误改关键设置无法代码化定制后台移除多余菜单、精简界面往往要写一堆钩子代码Intervention 的思路是一个intervention.php配置文件同时驱动 wp-admin 定制和全站应用配置。插件入口文件 intervention.php 在加载时会自动读取该配置并优先兼容 Composer 的vendor/autoload.php——这正是它为 Bedrock 项目而生的原因。一键安装在 Bedrock 项目中引入 Intervention由于插件本身是标准 Composer 包见 composer.json引入只需一条命令$ composer require wpackagist-plugin/intervention 要求 PHP 7.4。插件通过 src/Intervention.php 中的加载器解析配置文件核心路由映射定义在src/Support/Config.php中。安装后插件会自动注册工具 → Intervention管理页面方便你从界面导出配置。创建配置文件intervention.php 的三种写法在主题根目录创建intervention.phpBedrock Sage 10 项目则放在config/intervention.php返回一个数组即可。插件支持三种等价写法点号记法、标准数组、混合写法详细对照可参考 .github/config.md?php return [ application [ general [ tagline 我的站点口号, admin-email adminexample.com, timezone Asia/Shanghai, ], ], wp-admin.$role|$username [ common.adminbar, ], ];application分组管理应用状态站点配置wp-admin分组管理后台定制且可按用户角色精细控制按角色定制 wp-admin移除多余后台组件wp-admin分组允许你按角色甚至按指定用户名移除后台组件。角色名支持用|管道符组合多个例如editor|author还支持all和all-not-administrator快捷别名。?php return [ wp-admin.subscriber|contributor [ plugins.all, // 隐藏插件列表 plugins.add, // 隐藏安装插件 tools.site-health, // 隐藏站点健康 ], ]; 角色解析逻辑位于 src/Intervention.php 的initRoleFromConfigFile()方法各模块实现分布在src/Admin/目录下例如移除菜单项common.menusrc/Admin/Common/Menu.php精简插件页plugins.allsrc/Admin/Plugins/All.php定制设置页settings.generalsrc/Admin/Settings/General.php完整可用的选项清单login、dashboard、posts、media、appearance、users 等全部模块都在 README 的 Options 章节配套说明文档位于.github/wp-admin/目录。应用配置即代码让 wp-admin 字段自动变只读application分组是 Intervention 最强大的部分。一旦你在配置文件中声明了某个选项✅ 该值会强制覆盖数据库通过pre_option钩子还顺带减少数据库查询✅ 对应 wp-admin 字段会自动变为只读防止人为误改✅ 配置可安全地提交到 Git多环境保持一致完整示例可参考 .github/application-example.md涵盖常用分组分组可管理内容general站点标题、地址、管理员邮箱、语言、时区、日期格式permalinks固定链接结构、分类/标签基础路径media自定义图片尺寸、MIME 类型、上传目录组织discussion评论开关、嵌套层数、邮件通知、审核队列posts/taxonomies/menus注册或移除自定义内容类型、分类法、导航菜单plugins声明插件应处于启用/禁用状态实现这些功能的模块源码位于src/Application/目录如 src/Application/General.php、src/Application/Permalinks.php。从数据库反向生成配置一键导出不想手动敲配置Intervention 提供了官方导出工具在 wp-admin 中进入工具 → Intervention点击 Export插件会把数据库中的选项自动转换为intervention.php格式并下载将导出的文件放入主题目录配置即刻接管站点导出功能源码见 src/UserInterface/Export.php配置数组的归一化处理由 src/Support/Composer.php 完成。 推荐工作流先用界面导出 → 再在代码中按角色裁剪 → 最后提交 Git即可获得一份完全版本控制的站点基线配置。小结一个文件同时管理 wp-admin 定制与应用状态按角色控制后台界面管道符支持多角色 声明过的选项自动只读 强制覆盖杜绝后台误改 原生 Composer 支持Bedrock 项目一条composer require即可集成 后台内置导出工具数据库配置一键转代码对于以 Bedrock Composer 搭建的 WordPress 项目Intervention 让配置即代码成为现实——站点行为从此可审查、可回滚、可复制。【免费下载链接】interventionWordPress plugin to configure wp-admin and application state using a single config file.项目地址: https://gitcode.com/gh_mirrors/in/intervention创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考