必须使用 wpackagist-plugin/插件名 格式安装 WordPress 插件,并配置 extra.installer-paths 将其正确部署到 wp-content/plugins 目录,否则插件无法被 WordPress 识别;核心应通过 johnpbloch/wordpress 安装,wp-cli 需在 web/ 目录下运行或指定 --path。

直接 composer require wordpress/plugin-name 会失败,因为官方没上 Packagist
WordPress 官方插件目录(wordpress.org/plugins/)里的东西,压根没发布到 packagist.org。所以你敲 composer require wordpress/akismet 或 composer require classic-editor,一定会报错:Could not find package。
真正能装的包名格式是 wpackagist-plugin/akismet 或 wpackagist-theme/twentytwentyfour——注意前缀和连字符,大小写也必须完全匹配。
- 去 https://www.php.cn/link/a6e79d4197c9f9927b4102dfcc472dcb 搜插件名,复制页面上显示的完整包名,别手拼
- 查不到?说明该插件还没被 WPackagist 同步,或版本已被清理(比如旧版
polylang-pro可能不存,但polylang有) - 付费插件(如 ACF Pro、WP Rocket)不会出现在 WPackagist,需走私有仓库 +
auth.json认证
composer/installers 不配 installer-paths,插件就进不了 wp-content/plugins
就算你成功 require 了 wpackagist-plugin/advanced-custom-fields,它默认只会解压到 vendor/wpackagist-plugin/advanced-custom-fields,WordPress 根本看不见——后台列表为空,插件不激活。
关键在 composer.json 的 extra.installer-paths 配置,它告诉 composer/installers:“这个 type 的包,给我扔到哪去”。
- 必须声明
"type": "wordpress-plugin"(WPackagist 包自带,不用改) -
installer-paths路径要和你的 Web 根目录对齐:如果 WordPress 安装在项目根,用"wp-content/plugins/{$name}/";如果是 Bedrock 结构,就得写"web/app/plugins/{$name}/" - 确保目标目录存在且 Web 服务器用户有写权限,否则 Composer 会静默跳过,不报错也不创建
核心不是 wordpress/wordpress,别信过时教程
composer create-project wordpress/wordpress 在 2026 年仍会失败,因为这个包早已弃用,官方从未维护。你现在能稳定用的只有 johnpbloch/wordpress(type: webroot,定期同步 ZIP)、或 Bedrock 的 roots/wordpress(已归档,不推荐新项目)。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
装核心不是为了“跑起来”,而是为整个 Composer 工作流打基础:它把 wp-load.php、wp-includes 等放对位置,让后续插件加载、wp-cli 命令、自动加载才可能正常。
- 执行
composer require johnpbloch/wordpress:^6.5,核心文件进vendor/johnpbloch/wordpress - Web 服务器 DocumentRoot 必须指向
web/或public/(非项目根),否则 PHP 无法加载核心 -
wp-config.php和index.php必须手动放在 Web 根下,它们不归 Composer 管——改完得自己 git commit
wp-cli 找不到 wp-config.php?路径和工作目录没对齐
运行 wp plugin list 或 wp rewrite structure 报 Could not find wp-config.php,90% 是因为你没在正确路径下执行命令,或者 wp-config.php 不在当前工作目录或其父级目录里。
Composer 管理的项目结构天然割裂了“代码位置”和“运行位置”。wp-cli 默认从当前目录向上找 wp-config.php,而你很可能在项目根(含 composer.json)执行,但 wp-config.php 其实放在 web/ 下。
- 进
web/目录再运行wp命令:cd web && wp plugin list - 或用
--path显式指定:wp --path=web plugin list - 别指望
wp-cli自动识别 Composer 结构——它只认文件位置,不读composer.json
最常被忽略的一点:所有通过 Composer 安装的插件/主题,都禁止直接编辑 wp-content/plugins/xxx 里的文件。改了再 composer update,checksum 对不上,Composer 会强行重装覆盖——你改的代码就丢了。定制逻辑必须走子主题、mu-plugin 或配置文件。

















