【EC-CUBE4】商品項目を無限に追加できる機能を実装する方法

EC-CUBE4で商品項目を無限に追加できる機能を実装する方法です。

以下のように無限に商品項目を追加できるようにします。

今回は項目名と内容を登録してフロント側で表示させるだけのシンプルな実装となっています。

 

細かい説明はしていません。ファイルの設置場所はnamespaceを確認してください。

 

商品項目を保存するためProductItemのエンティティとリポジトリを用意

以下のように商品項目を保存するためProductItemエンティティを用意します。

 

 

 

ProductTraitも用意

ProductTraitも用意します。

 

proxyを作成しておいてください。

 

ProductItemTypeを用意

ProductItemTypeを用意します。

 

 

ProductTypeExtensionを用意

商品登録画面をカスタマイズするのでProductTypeExtensionを用意します。

 

商品項目を追加するテンプレートを用意

商品項目を追加するテンプレートを用意します。

 

 

テンプレートを商品登録画面に表示するイベントを用意

テンプレートを商品登録画面に表示するイベントを用意します。

 

以上で商品登録画面側は完成です。

 

登録した商品項目をフロントで表示

以下のようにフロントで商品項目を表示させます。

 

商品ページテンプレートにタグを追加

商品ページテンプレートに以下のタグを追加してください。

 

以上でフロントも完成です。

 

商品登録画面で商品項目を登録すると、フロント側で動的に商品項目が表示されるようになります。

 

ちなみに商品項目登録時の入力チェックは行っておりませんので独自に実装してください。

空のまま登録するとエラーとなります。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください