*

EC-CUBE 在庫ありなどの条件で一覧表示の順序を変える

公開日: : EC-CUBE

EC-CUBE初期の状態だと「商品一覧ページの頭の方にも在庫切れ商品が表示」されますね。お客様がサイトにアクセスして、在庫切れ商品ばかりが並んでいるのは避けたい。

対策として1.在庫あり商品だけ表示させる 2.在庫がある商品を優先して表示させるがあります。今回は2の対策を行います。

理由は、在庫切れ商品も表示させた方が、「人気ショップ、取扱商品数が多い」などのイメージを与えられる期待と、コンテンツ量を増やすためです。

修正するファイル
data/class/pages/products/LC_Page_Products_List.php
data/Smarty/templates/default/products/list.tpl

 

data/class/pages/products/LC_Page_Products_List.php
/* 商品一覧の表示 */
public function lfGetProductsList($searchCondition, $disp_number, $startno, &$objProduct)
{
$arrOrderVal = array();

$objQuery =& SC_Query_Ex::getSingletonInstance();
// 表示順序
switch ($this->orderby) {
// 販売価格が安い順
case ‘price’:
$objProduct->setProductsOrder(‘price02′, ‘dtb_products_class’, ‘ASC’);
break;

// 販売価格が高い順
case ‘price2′:
$objProduct->setProductsOrder(‘price02′, ‘dtb_products_class’, ‘DESC’);
break;

// 新着順
case ‘date’:
$objProduct->setProductsOrder(‘update_date’, ‘dtb_products’, ‘DESC’);
break;

// 在庫あり
case ‘stock’:
$objProduct->setProductsOrder(‘stock’, ‘dtb_products_class’, ‘DESC’);
break;

// 在庫なし
case ‘stock2′:
$objProduct->setProductsOrder(‘stock’, ‘dtb_products_class’, ‘ASC’);
break;

default:
$objProduct->setProductsOrder(‘stock’, ‘dtb_products_class’, ‘DESC’);
break;
}

data/Smarty/templates/default/products/list.tpl
<!–▼ページナビ(本文)–>
<!–{capture name=page_navi_body}–>
<div>
<div>
<!–{if $orderby != ‘price’}–>
<a href=”javascript:fnChangeOrderby(‘price’);”>価格の安い順</a>
<!–{else}–>
<strong>価格の安い順</strong>
<!–{/if}–>&nbsp;
<!–{if $orderby != ‘price2′}–>
<a href=”javascript:fnChangeOrderby(‘price2′);”>価格の高い順</a>
<!–{else}–>
<strong>価格の高い順</strong>
<!–{/if}–>&nbsp;
<!–{if $orderby != ‘stock’}–>
<a href=”javascript:fnChangeOrderby(‘stock’);”>新着順</a>
<!–{else}–>
<strong>新着順</strong>
<!–{/if}–>&nbsp;
<!–{if $orderby != ‘stock2′}–>
<a href=”javascript:fnChangeOrderby(‘stock2′);”>登録順</a>
<!–{else}–>
<strong>登録順</strong>
<!–{/if}–>&nbsp;
<!–{if $orderby != “date”}–>
<!–        <a href=”javascript:fnChangeOrderby(‘date’);”>新着順</a> –>
<!–{else}–>
<!–    <strong>新着順</strong> –>
<!–{/if}–>
表示件数

一部コメントアウトもしていますが、編集後のコードです。

 

関連記事

no image

EC-CUBE 配送の日時の指定について

ショッピングカートの中で「お届け時間の指定」ができますが、 お届け日の指定が「指定できません」とな

記事を読む

no image

EC-CUBE 通販サイトのクレカ払い手数料節約

EC-CUBEに関わらず、通販サイトを運営するために決済サービスを申し込むことが多いですね。

記事を読む

no image

EC-CUBE 新しいショップを追加する流れ

今回は、「新しいショップを追加する」作業の流れです。 現状 ・レンタルサーバーのルートディレ

記事を読む

no image

EC-CUBEにjavascriptを。

通販サイトをEC-CUBEで運営しています。 デフォルトではスムーススクロールができませんが、簡単

記事を読む

no image

EC-CUBE スマホでPCのテンプレートを表示させる

こんばんは。 EC-CUBEはパソコン、スマホ、ガラケーと3種類のデザインテンプレートが用意さ

記事を読む

no image

EC-CUBE Googleアナリティクスのコードを入れる場所

こんばんは。 EC-CUBEにGoogleアナリティクスのコードを入れるファイルは、 パソコンテ

記事を読む

no image

EC-CUBEにPayPalを入れる前に。

EC-CUBEの決済で「PayPal ペイパル」を入れようと計画し、あれこれ調査、テストした時のこと

記事を読む

no image

EC-CUBE 大量のカテゴリを一気に登録 “カテゴリ登録CSV”

こんにちは。無料で誰もが簡単にネットショップを立ち上げ可能というツール、EC-CUBEをこつこつカス

記事を読む

no image

EC-CUBE ウェブマスターツールのURLエラー(500)について

こんばんは。 先日、EC-CUBEのショッピングサイトをウェブマスターツールに登録しました。

記事を読む

no image

EC-CUBE スマホ 商品詳細のポップアップ画像がはみ出してしまう

スマホ 商品詳細 ポップアッップ画像がはみ出てしまう。 firebugでソースを確認するとfa

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

no image
Fireworks CS5.1 テキスト編集ができなくなった

Fireworksメインでデザインをしています。 なぜかテキスト

no image
EC-CUBE スマホ 商品詳細のポップアップ画像がはみ出してしまう

スマホ 商品詳細 ポップアッップ画像がはみ出てしまう。 fire

no image
ドメイン取得からサイト公開まで

「なんたらかんたらドットコム」という名前のホームページを持ちたい!

no image
EC-CUBE スマホサイトのページ内リンク

EC-CUBEだけではないのですが、スマホサイトではページ内リンクが上

no image
EC-CUBE 入力内容のご確認の文言編集

決済モジュールやプラグインの支払い方法が選択されていると、 カートの

→もっと見る

PAGE TOP ↑