EC-CUBE カスタマイズ 商品詳細データなどをデータベースから取得
EC-CUBE カスタマイズ > EC-CUBE カスタマイズ:基礎 > データベースの値を取得表示
カスタマイズ:基礎/データベースの値を取得表示
データベース上に格納されている、商品詳細データなどを取得し、表示させるカスタマイズを紹介します。 ページ表示の際に、既に取得してきている値であれば、比較的簡単に実現可能です。
システム開発でお悩みの方は、ネットショップ構築パッケージ EC-Orange にお問い合わせください
変数名の確認
今回は、データベースから既に取り出している値を、商品詳細ページに表示させるカスタマイズを行います。
データベースから値を取り出しているロジックが書かれているファイルで確認をします。
商品詳細ページのクラスファイルは、
/data/class/pages/products/LC_Page_Products_Detail.php
です。
- 210行目付近
- // DBから商品情報を取得する。
- $arrRet = $objQuery->select("*", "vw_products_allclass_detail AS alldtl", "product_id = ?", array($tmp_id));
- $this->arrProduct = $arrRet[0];
ここでデータベースから、商品情報を取得し、$arrProductに格納しています。
$arrProduct['stock_max']の中に、在庫数が格納されていますので、これを利用します。
テンプレートファイルの更新
以下が、商品詳細ページのテンプレートファイルです。
/data/Smarty/templates/default/detail.tpl
「個数」という表示の下に、
「残りあと○○個です。」という表示を加えてみます。
- 190行目付近
- <dl>
- <dt>個 数<⁄dt>
- <!––以下を挿入––>
- <!––{if $arrProduct.sale_limit}––>
- <dd><!––{$arrProduct.sale_limit}––>個まで購入できます。<⁄dd>
- <!––{/if}––>
- <!––ここまで––>
- <dd><input type="text" name="quantity" class="box54" value="<!––{$arrForm.quantity.value|default:1}––>" maxlength="<!––{$smarty.const.INT_LEN}––>" style="<!––{$arrErr.quantity|sfGetErrorColor}––>" />
- <!––{if $arrErr.quantity != ""}––>
- <br /><span class="attention"><!––{$arrErr.quantity}––><⁄span>
- <!––{/if}––>
- <⁄dd>
- <⁄dl>
EC-CUBEのカスタマイズ・制作会社 強いネットショップ構築します|EC-Orange





