前提:
EC-Cube 2.12.6 にて商品に延長保証の項目を追加しております。
(PHP: 5.3.3, MySQL:5.1.73)
追加する項目(延長保証)については商品規格の一つとして扱いたいと考えております。
それに伴い、商品一覧ページ(list.tpl)および商品詳細ページ(detail.tpl)にて
ラジオボタンを表示し、「選択可能な延長保証年数」を確認できるようにしたいです。
例)
dtb_product_class
商品ID | 商品ID | 名前 | ステータス | 規格カテゴリID1 |
---|---|---|---|---|
1 | 1 | name | status | X |
dtb_classcategory
規格カテゴリID | 規格名 | 規格ID |
---|---|---|
6 | 3年 | X |
7 | 5年 | X |
8 | 6年 | X |
また、商品の金額に応じて同じ保証でも値段が変わる場合や
保証料金が商品の金額に左右されず一律となる場合もあるため、
新たに以下のようなテーブルを追加しています。
例)
dtb_warranty
商品ID | 規格カテゴリID | 保証料金 | 保証料率(%) |
---|---|---|---|
1 | 6 | 5 | |
1 | 7 | 1,500 |
商品一覧ページ及び商品詳細ページでは、ラジオボタンにより延長保証の項目を表示し、
ラベルとして保証料金を(場合によっては計算して)表示したいと思っております。
上記を踏まえ、以下のようにテンプレート側を変更しました。
①list.tpl
smarty
1<!--▼規格1--> 2 <h2>延長保証</h2> 3 <dt><!--{$tpl_class_name1[$id]|h}-->:</dt> 4 <dd> 5 <!--{foreach from=$arrProductClass item="kikaku"}--> 6 <!--{html_radios options=$kikaku.classcategory_id1 selected=$arrProduct.classcategory_id1}--> 7 <!--{if $arrErr.classcategory_id1 != ""}--> 8 <p class="attention">※ <!--{$tpl_class_name1[$id]}-->を入力して下さい。</p> 9 <!--{/if}--> 10 <!--{/foreach}--> 11 </dd> 12<!--▲規格1-->
②detail.tpl
smarty
1<!--▼規格1--> 2 <h2>延長保証</h2> 3 <!--{foreach from=$arrProductsClass item="kikaku1" key="key"}--> 4 <label/><input type="radio" name="classcategory_id1" value="<!--{$kikaku1.classcategory_id1}-->" /><!--{$kikaku1.classcategory_name1}--></label> 5 <!--{$kikaku1.price02}-->円 6 <!--{/foreach}--> 7<!--▲規格1-->
しかし、下図のように現状ではラジオボタンが表示されない状態となっております。
上記問題の解決にご協力いただけないでしょうか。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー