2015年7月31日金曜日

【ECCUBE】2.12系 在庫のない規格を選択肢から消す。

ECCUBE 2.12系で在庫のない商品の規格を選択肢から削除したい。
在庫がない場合、選択肢の横に(品切れ中)とは表示されるが、紛らわしいので消してしまおうという事に。

まずは「商品詳細ページ」のページ詳細を見てみる事に。
どうやら規格の選択肢の生成にはSmartyのhtml_optionを使っているようだ。


Smarty公式によると
{html_options} は、HTML の <select><option> グループにデータを代入して作成する カスタム関数 です。

html_optionsのオプションのoptionsに配列を渡して選択肢を作るようだ。
ではさてoptionsに渡されている変数は$arrClassCat1
これはLC_Page_Products_Detail.phpで渡されているが、中身はSC_Product.phpで設定されているようだ。

290行目付近で設定されていました。


ここを在庫がない場合は非表示にする為に下記の様に分岐をさせます。


これで在庫のない規格は選択肢から消え去ります。

0 コメント:

コメントを投稿