我正在使用Roots/Bedrock为我的WordPress结构,我想使用WebDevStudios/cb2作为一个库,而不是作为一个插件。
根/基岩作曲家。json指定将type:wordpress-plugin
的依赖项安装在app/plugins
中。WebDevStudios/cb2作曲家。json声明它是wordpress-plugin
类型,所以它被安装到app/plugins
,这不是我想要的。
如何将此依赖项安装到vendor
而不是app/plugins
?
我怀疑我可能不得不分叉cmb并将其类型从wordpress-plugin
更改为library
,但我希望有一个更干净的解决方案。
我没有使用Roots/Bedrock,但在将cb2作为依赖项添加到插件(而不是将其作为单独的插件加载)时,我遇到了类似的问题。它是在wp-content/plugins
而不是vendor
安装插件。以下方法对我很有效。
{
"require": {
"webdevstudios/cmb2": "^2.2",
},
"autoload" : {
"files": [
"vendor/webdevstudios/cmb2/init.php"
]
},
"extra": {
"installer-paths": {
"vendor/webdevstudios/cmb2": ["webdevstudios/cmb2"]
}
}
}
关键是installer-paths
条目,它告诉Composer我们要在哪里安装webdevstudios/cmb2
。
我在https://salferrarello.com/cmb2-composer-dependency/上写了一篇关于这个的博文