wpackagist.org 是一个将 WordPress.org 插件和主题打包为 Composer 兼容包的第三方服务,允许通过 Composer 安装和更新插件。在 Bedrock 项目中使用时,需在 composer.json 中添加 wpackagist 仓库源,并按 wpackagist-plugin/{插件名} 或 wpackagist-theme/{主题名} 格式声明依赖,运行 composer install 或 composer require 安装插件,Composer 会自动将其安装到 web/app/plugins 目录。建议使用 ^ 版本约束、定期检查更新,且不手动修改由 Composer 管理的文件,以提升项目可维护性。

在使用 WordPress Bedrock 构建项目时,依赖管理完全由 Composer 负责。与传统 WordPress 直接从后台安装插件不同,Bedrock 鼓励通过 Composer 来管理主题、插件和核心依赖。为了能通过 Composer 安装来自 WordPress.org 的官方插件,我们可以借助 wpackagist.org 这个镜像仓库。
什么是 wpackagist.org?
wpackagist.org 是一个将 WordPress.org 插件和主题打包为 Composer 兼容包的第三方服务。它允许你像引入 PHP 库一样,用 Composer 命令安装和更新 WordPress 插件。
例如,你想安装 Advanced Custom Fields,你可以这样写:
{
"type": "package",
"repository": {
"type": "composer",
"url": "https://wpackagist.org"
},
"require": {
"wpackagist-plugin/advanced-custom-fields": "^5.14"
}
}
如何配置 Composer 使用 wpackagist
要在 Bedrock 项目中使用 wpackagist,需在项目的根目录下的 composer.json 文件中添加仓库源,并声明所需插件。
步骤如下:
- 打开项目根目录的 composer.json
- 确保已包含 wpackagist 的 repository 配置
- 在 require 或 require-dev 中添加需要的插件
示例配置:
{
"name": "roots/bedrock",
"type": "project",
"repositories": [
{
"type": "composer",
"url": "https://wpackagist.org"
}
],
"require": {
"php": "^8.1",
"composer/installers": "^2.2",
"vlucas/phpdotenv": "^5.5",
"roots/wp-config": "1.0.0",
"roots/wordpress": "^6.5",
"wpackagist-plugin/akismet": "^5.1",
"wpackagist-plugin/woocommerce": "^8.0",
"wpackagist-theme/twentytwentyfour": "^1.0"
},
"autoload": {
"psr-4": {
"App\\": "web/app/Controllers/"
}
}
}
注意命名规则:
- 插件格式:wpackagist-plugin/{插件目录名}
- 主题格式:wpackagist-theme/{主题目录名}
安装与更新插件
配置完成后,在终端运行:
composer install
或安装单个插件:
composer require wpackagist-plugin/wordpress-seo
更新所有插件(包括 wpackagist 包):
composer update
更新特定插件:
composer update wpackagist-plugin/akismet
Composer 会自动将插件下载到 web/app/plugins 目录(由 composer/installers 处理路径映射)。
注意事项与最佳实践
- 不是所有插件都支持 Composer 安装 —— 只有发布在 WordPress.org 上的插件才能通过 wpackagist 使用
- 版本号建议使用
^约束,避免意外升级破坏兼容性 - 私有插件或第三方商业插件无法通过 wpackagist 获取,需使用 private repositories 或 artifact 方式管理
- 定期运行
composer outdated检查可更新的插件 - 不要手动修改 vendor 或 web/app/plugins 下由 Composer 管理的插件文件
基本上就这些。通过 wpackagist + Composer,你可以把 WordPress 插件纳入版本控制和自动化部署流程,提升项目的可维护性和一致性。










