Подводя итог: как мне использовать WordPress с Composer, когда некоторые плагины уже используют composer и имеют свои собственные библиотеки?
Я использую root / bedrock (приспособленный к моим потребностям с другой папкой wordpress и некоторые зависимости удалены), что мне не нужно), проблема, которую я вижу, заключается в том, что когда я устанавливаю плагины поверх WordPress (например, MailPoet или WP SMTP), кажется, что эти плагины имеют свои собственные папки вендора и автозагрузчик (что означает, что они уже используют композитор самостоятельно)
Это мои скорректированные composer.json
(на самом деле не отличаются от оригинала)
{
"name": "roots/bedrock",
"type": "project",
"license": "MIT",
"description": "WordPress boilerplate with modern development tools, easier configuration, and an improved folder structure",
"homepage": "https://roots.io/bedrock/",
"authors": [
{
"name": "Scott Walkinshaw",
"email": "scott.walkinshaw@gmail.com",
"homepage": "https://github.com/swalkinshaw"
},
{
"name": "Ben Word",
"email": "ben@benword.com",
"homepage": "https://github.com/retlehs"
}
],
"keywords": [
"bedrock", "composer", "roots", "wordpress", "wp", "wp-config"
],
"support": {
"issues": "https://github.com/roots/bedrock/issues",
"forum": "https://discourse.roots.io/category/bedrock"
},
"config": {
"preferred-install": "dist"
},
"repositories": [
{
"type": "composer",
"url": "https://wpackagist.org"
}
],
"require": {
"php": ">=7.3",
"composer/installers": "^1.4",
"roots/wordpress": "5.2.2",
"roots/wp-password-bcrypt": "1.0.0"
},
"extra": {
"installer-paths": {
"web/app/mu-plugins/{$name}/": ["type:wordpress-muplugin"],
"web/app/plugins/{$name}/": ["type:wordpress-plugin"],
"web/app/themes/{$name}/": ["type:wordpress-theme"]
},
"wordpress-install-dir": "web"
}
}
Нет сообщений об ошибках, но я беспокоюсь из-за избыточности, что мой полный WordPressструктура имеет автозагрузчик и вендор / папку, то же самое происходит почти в каждом плагине снова.Как мне структурировать код и работать с этим?