【发布时间】:2019-03-19 19:36:07
【问题描述】:
我已经设置WordPress and obtaining its required plugins via composer 好几年了,它工作得很好,但是在安装不知道如何使用WP_SITEURL 和还有不支持非标准 WordPress 文件夹结构的 PaaS。
所以我想知道我是否仍然可以使用 composer 来设置 WordPress-core(或任何其他包),但我希望先安装它。
说在你的composer.json,你有以下包:
{
"name": "test/composer-install-order",
"type": "project",
"repositories": [
{ "type": "composer", "url": "https://wpackagist.org" }
],
"require": {
"php": ">=7.2",
"composer/installers": "~1.6.0",
"johnpbloch/wordpress": "^4.9",
"wpackagist-plugin/better-search-replace": "*",
"wpackagist-plugin/bugherd": "*",
"wpackagist-plugin/disable-emojis": "*"
},
"extra": {
"installer-paths": {
"public_html/wp-content/plugins/{$name}/": ["type:wordpress-plugin"],
"public_html/wp-content/themes/{$name}/": ["type:wordpress-theme"]
},
"wordpress-install-dir": "public_html"
},
"config": {
"preferred-install": "dist",
"optimize-autoloader": true,
"sort-packages": true
}
}
上面的 composer.json 说您需要 3 个插件: better-search-replace、bugherd 和 disable-emojis
但是当你点击composer install:
➜ temp1 composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 7 installs, 0 updates, 0 removals
- Installing composer/installers (v1.6.0): Loading from cache
- Installing johnpbloch/wordpress-core-installer (1.0.0.2): Loading from cache
- Installing wpackagist-plugin/better-search-replace (1.3.2): Loading from cache
- Installing wpackagist-plugin/bugherd (1.0.0.0): Loading from cache
- Installing johnpbloch/wordpress-core (4.9.8): Loading from cache
- Installing johnpbloch/wordpress (4.9.8): Loading from cache
- Installing wpackagist-plugin/disable-emojis (1.7.2): Loading from cache
Writing lock file
Generating optimized autoload files
➜ temp1
您只会在wp-content/plugins 文件夹中获得1 个插件。原因是当您检查上面的打印时,在 Wordpress 核心文件 johnpbloch/wordpress 之前首先安装了 2 个插件 better-search-replace 和 bugherd。所以即使composer 将这两个插件包提取到正确的文件夹中,johnpbloch/wordpress 也将它们删除,因为它覆盖了wp-content/plugins 文件夹。
唯一可行的方法是,如果我在插件之前先安装johnpbloch/wordpress,但我不知道它是否可能,因为 composer 通过composer.lock 内容安装。
【问题讨论】:
标签: php wordpress composer-php composer-plugin