- 2018.06.05
- EC-cube
【EC-cube2.13】全商品数を取得、表示させたい

クライアントより、登録されている商品数を記載したいという要望がありました。
商品点数で規模感を出したいサイトには有効かもしれませんね。
削除した商品はカウントしない
DB上には削除した商品も残っていますので、「del_flg = 0」の商品のみカウントします。
PHPロジック側で下記を追加。
$objQuery =& SC_Query_Ex::getSingletonInstance();
$objQuery->setWhere('del_flg = 0');
$arrAllItems = $objQuery->select('product_id', 'dtb_products');
$this->itemAllCount = count($arrAllItems);
Smartyテンプレート側は下記を追加。
<!--{$itemAllCount|default:0}-->
公開している商品数に限定
更に非公開の商品はカウントしたくない場合は、PHPロジック側を下記に変更。
$objQuery =& SC_Query_Ex::getSingletonInstance();
$objQuery->setWhere('del_flg = 0 AND status = 1');
$arrAllItems = $objQuery->select('product_id', 'dtb_products');
$this->itemAllCount = count($arrAllItems);
PHPロジック側ってどのファイル?
私が表示させたのは共通部分だったので、
data/class/pages/LC_Page.phpのinit()内に記載しました。
検証してませんが、TOPページなら
data/class/pages/LC_Page_Index.phpだと思います。