質問 > フロント機能 > 【商品詳細】1つの規格を複数選択できるようにしたい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hanne6st |
投稿日時: 2018/12/24 17:11
対応状況: −−−
|
新米 登録日: 2018/12/24 居住地: 投稿: 2 |
【商品詳細】1つの規格を複数選択できるようにしたい ▼テンプレート
[EC-CUBE] EC-CUBE3.0 [レンタルサーバ] Xserver [OS] Mac OS 10.13 [データベース] MySQL [WEBサーバ] Apache [ブラウザ] Google Chrome [導入プラグインの有無] ダウンロード商品プラグイン V1.0.2(コード:DownloadProduct) [カスタマイズの有無] カスタマイズ中 [現象] 現在、1つの商品に1つの規格を割り当てています。 その規格には複数分類を設定しておりますが、デフォルトの商品詳細画面ですと、規格はプルダウンで選択するようになっているため、複数の分類を選択することができません。 これを、チェックボックスにして複数選択できるようにしたいと考えております。 また、そのチェックボックスのチェック状態に連動して表示金額も変わるようにしたいです。 上記を実現するにはどうすればよいかご教示いただけないでしょうか。 現在わかっていることとは、detail.twigの200行目辺りの、 {{ form_widget(form.classcategory_id1) }} をカスタマイズすればできそうだということのみです。 よろしくお願いいたします。 |
468 |
投稿日時: 2018/12/25 10:21
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 【商品詳細】1つの規格を複数選択できるようにしたい 入力フォームの変更はFormTypeクラスをカスタマイズする事になると思います。
商品詳細画面からカート投入の入力は以下のFormTypeクラスを利用していると思います。 /src/Eccube/Form/Type/AddCartType.php 100行目付近に規格分類のプルダウンが設定されていると思います。 expandedオプションやmultipleオプションの組み合わせでチェックボックス、ラジオボタン、セレクトボックスを切替できます。 ただ、カートに商品を投入処理自体が1つの商品しか受け取れない仕様となっている為、 複数商品を一度に投入させる場合、 上記FormTypeのproduct_id, product_class_id辺りも改修する必要があると思います。 デフォルトでは、javascriptで規格分類プルダウンを選択したタイミングでhiddenで配置されているproduct_class_idに その規格分類の組み合わせにあたるproduct_class_idをセットしています。 (/html/template/default/jseccube.jsに記述有り 同時に商品コード, 在庫チェック, 単価の書き換えも行います) カート投入ロジックでは、上記のJavascriptでセットされたproduct_class_idを受け取って、商品を判定しカートに投入しています。 (/src/Eccube/Controller/ProductController.php function detail() 273行目付近 ) よって、AddCartType.php, eccube.js, ProductController.phpに対して改修する必要があるかと思います。
|
hanne6st |
投稿日時: 2018/12/27 22:46
対応状況: −−−
|
新米 登録日: 2018/12/24 居住地: 投稿: 2 |
Re: 【商品詳細】1つの規格を複数選択できるようにしたい ご回答有難う御座います。
上記の通り試してみます。 誠にありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |