Composer で、CakePHP とそのプラグインをインストールするとき。
{
"require": {
"cakephp/cakephp": "~2.5",
"cakephp/debug_kit": "2.*"
}
}
composer.json に上記のように書いて composer install
すると、フォルダ構成がこんな感じになる。
- vendor
- cakephp
- cakephp
- Plugin
- DebugKit
デフォルトでは CakePHP のプラグインがルートの Plugin
というフォルダに入るのだけど、このフォルダを任意で指定したい場合、どんな書き方をすればいいか調べた。
Composerのサイトの FAQ にそれっぽい記述があり、
How do I install a package to a custom path for my framework?
extra.installer-paths
の部分に書くことで、typeごとにプラグインのインストール先フォルダを指定できる。
たとえば composer.json にこう書いて、
{
"require": {
"cakephp/cakephp": "~2.5",
"cakephp/debug_kit": "2.*"
},
"extra": {
"installer-paths": {
"cakeapp/Plugin/{$name}": ["type:cakephp-plugin"]
}
}
}
type:cakephp-plugin
のものは cakeapp/Plugin/プラグイン名
というフォルダに保存されるように設定。
上記を composer install
すると、こんな構成になる。
- vendor
- cakephp
- cakephp
- cakeapp
- Plugin
- DebugKit
というかんじです。