EC-CUBE 4.2 プラグイン 開発
Ec-cube v4.2.1 を利用して商品ページに NEW タグ表示する独自プラグインを開発します。
プラグイン開発においての注意点
- 開発中に画面上で開発中プラグインのアンインストール(削除)をしない
- 開発中にアンインストールすると app/Plugin 配下のソースがすべてシステム的に削除されてしまいます。
eccube:plugin:uninstall --forceコマンド使わない
- プラグインをアンインストールしてしまうので、使わないほうがいいです。
プラグイン生成コマンド
`bin/console e:p:g` とは
bin/console eccube:plugin:generateの略でプラグインを開発するためのコマンドラインツールです。
このコマンドを実行することで、プラグインの雛形を作成することができます。
プラグインインストール eccube:plugin:install
bin/console e:p:i –code=[プラグイン名]
プラグインの有効化 eccube:plugin:enable
bin/console e:p:e –code=[プラグイン名]
プラグインの無効化 eccube:plugin:disable
bin/console e:p:d –code=[プラグイン名]
デフォルトで作成されるディレクトリとファイル一覧
- Controller
- Entity
- Event.php
- Form
- Nav.php
- Repository
- Resource
- TwigBlock.php
- composer.json
プラグインのディレクトリ構造
プロジェクト名 ProductNewTag にします。
設定ファイルであるcomposer.jsonは必須
services.yaml はコンテナの定義保存しています。
composer.json
| 項目 | 説明 | メモ |
| name | パッケージ名 | ec-cube/[プラグインコード] を記述 |
| version | バージョン | php のバージョンフォーマットに合わせ |
| description | プラグイン名称 | |
| type | パッケージタイプ | eccube-plugin固定 |
| require | 依存パッケージ | ec-cube/plugin-installer": "~0.0.6" などを記述 |
| extra | 付属情報 | "code": "[プラグインコード]" を記述 |
プラグインのファイル
app/Plugin/ProductNewTag/ProductNewTag.php プラグインのエントリーポイント app/Plugin/ProductNewTag/Service/NewTagService.php 商品名に New タグを追加する処理を実装するサービス
ProductNewTag.php
NewTagService.php
プラグインを有効化
エラー
開発コマンド