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
プラグインを有効化
エラー
開発コマンド