発生状況
プラグインで管理画面の商品検索Formをカスタマイズしようと
インストールコマンドを叩いたところ、以下のエラーに遭遇しました。
# インストールコマンド実行
bin/console eccube:plugin:install --code=AdminProductSearchCustomize
Compile Error: Cannot declare class
AdminProductSearchCustomize\Form\Extension\AdminSearchProductTypeExtension,
because the name is already in use
# キャッシュ削除実行するも変わらず。
bin/console cache:clear --no-warmup
PHP Fatal error: Cannot declare class AdminProductSearchCustomize\Form\Extension\AdminSearchProductTypeExtension,
because the name is already in use in/var/www/*****/app/Plugin/AdminProductSearchCustomize/Form/Extension/AdminSearchProductTypeExtension.php on line 0
namespace の記述が問題でした。
プラグインとして今回は作成するので、namespaceは
正: Plugin\AdminProductSearchCustomize\Form\Extension;
誤: AdminProductSearchCustomize\Form\Extension;
初歩的なことですが、他のプラグインからコピペしてしまうとあるあるですね💦
ECCUBE4は、Plugin内でController,Entity,Form,Repository,イベントと色々カスタマイズできますが、気をつけて開発したいと思います。