EC-CUBE

EC-Cubeカスタマイズ:商品一覧で表示順序の切り替えを追加

投稿日:2012年3月17日 更新日:

今日は備忘録です。
EC-Cubeの商品一覧画面って
初期では「価格順」「新着順」の2つだけしか無いのですが
もう少し追加したい・・・

ということで
「価格順」を価格が高い順と価格が安い順の2つに分けることにします。

修正するファイルは
テンプレートファイルと
クラスファイルの2つ

どのように動作しているかというと
リンクをクリックすると、Javascriptでテンプレート内の隠し項目「orderby」に
引数を入れてPOSTしています。
受け取った「orderby」の値を元に、商品検索の内部処理時のSQLに
order by句を当てはめているわけです。

ということで変更する方法は以下のとおりです。

まずはテンプレートファイルを変更
ファイル名:list.tpl
<a href=”javascript:fnModeSubmit(”, ‘orderby’, ‘price’)”>価格が安い順</a>

<a href=”javascript:fnModeSubmit(”, ‘orderby’, ‘price2’)”>価格が安い順</a>
を表示したい部分に修正・追加します。
基本的にはこれだけでOK

現在の表示順を表示したい場合は
<!–{if $orderby != ‘price’}–>
<!–{else}–>
&lt;!–{/if}-&gt;
の部分を編集します。

次にクラスファイルを変更
ファイル名:LC_Page_Products_List_Ex.php
継承元であるLC_Page_Products_List.phpから
以下の関数をコピーします。

lfDispProductsList

コピーした関数の
//表示順序
switch($orderby) {
}
の部分に追加した「price2」のorder by句を追記します。

case ‘price_2’:
$order = “price02_min desc, product_id”;
break;

簡単ですね!!

ad

ad

-EC-CUBE
-,

執筆者:


comment

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

スパム対策 * Time limit is exhausted. Please reload the CAPTCHA.

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

EC-Cubeカスタマイズ:管理画面:商品カテゴリーにアイコンと説明文を追加する2

ここ数日間、多くの方に読んでいただけているようで お陰様でランキングが急上昇しております。 この場を借りて御礼申し上げます。 さて、表題の件の続きです。 当初はアイコンのアップロードも開発する予定でし …

EC-Cubeカスタマイズ:管理画面:商品カテゴリーにアイコンと説明文を追加する

配送料の管理はのびのびですみません。 今日は、管理画面側の変更方法のメモです。 商品カテゴリーにアイコンと説明文を追加する方法です。 商品カテゴリーは [dtb_category]で管理されていますが …

EC-Cube改造:商品詳細ページにサブの写真を表示する

またまた、備忘録です EC-Cubeの商品詳細ページには、メインのコメントや写真のほかにも サブの情報として、最大5個情報を表示することが可能です。 使い方によっては、写真のみをメインの写真+方向を変 …

EC-CUBEカスタマイズ:新着商品一覧をトップページに表示する

EC-Cubeのカスタマイズ案件が今後続きそうなので よく使われそうな機能を備忘録的に・・・ 第一弾:トップページに新着商品を一覧表示 A)管理画面で操作 「デザイン管理」→「ブロック編集」 ブロック …

EC-Cubeカスタマイズ:配送料管理:配送先(都道府県)ごとに複数の配送料を管理する(大きさ・重さ別)

改造の前提条件  ・複数配送先は対応しない  ・小型商品配送用の箱を2種類用意する  ・EC-Cube以外のフリーソフトへの変更は考えない  ・決済方法は、クレジットカード決済・代金引換宅配・銀行振込 …