商品のカテゴリーページに入った時などに表示される、商品の並び順変更機能ですが、デフォルトでは「価格順」と「新着順」のふたつです。
これにもうひとつ「高い順」を加えてみる事にします。
商品一覧ページで見る時、「高い順」というのは需要としてあまりないかもしれませんが、それもまた閲覧者次第なので、用意しておけるのなら設置しておいて良いんじゃないかな?って感じです。
ファイルの書き換え:その1
data\class\pages\products\LC_Page_Products_List.php
のファイルを開いて、380行目辺りに下記を追記します。
//価格が高い順
case 'price2':
$col = "DISTINCT price02_min, product_id, product_code_min, product_code_max,"
. " name, comment1, comment2, comment3,"
. " main_list_comment, main_image, main_list_image,"
. " price01_min, price01_max, price02_max,"
. " stock_min, stock_max, stock_unlimited_min, stock_unlimited_max,"
. " point_rate, sale_limit, sale_unlimited, deliv_date_id, deliv_fee,"
. " status, product_flag, create_date, del_flg";
$from = "vw_products_allclass AS T1";
$order = "price02_min DESC, product_id";
break;
ファイルの書き換え:その2
次に、data\Smarty\templates\テンプレート名\list.tpl
を開いて、53行目辺りと180行目辺りにある下記部分を変更します。
<変更前>
<li class="right"><!--{if $orderby != 'price'}-->
<a href="javascript:fnModeSubmit('', 'orderby', 'price')">価格順</a>
<!--{else}-->
<strong>価格順</strong>
<!--{/if}-->
<!--{if $orderby != "date"}-->
<a href="javascript:fnModeSubmit('', 'orderby', 'date')">新着順</a>
<!--{else}-->
<strong>新着順</strong>
<!--{/if}-->
</li>
<変更後>
<li class="right"><!--{if $orderby != 'price'}-->
<a href="javascript:fnModeSubmit('', 'orderby', 'price')">価格が安い順</a>
<!--{else}-->
<strong>価格が安い順</strong>
<!--{/if}-->
<!--{if $orderby != "price2"}-->
<a href="javascript:fnModeSubmit('', 'orderby', 'price2')">価格が高い順</a>
<!--{else}-->
<strong>価格が高い順</strong>
<!--{/if}-->
<!--{if $orderby != "date"}-->
<a href="javascript:fnModeSubmit('', 'orderby', 'date')">新着順</a>
<!--{else}-->
<strong>新着順</strong>
<!--{/if}-->
</li>
以上で価格の高い順、安い順と新着順表示になりました。
あとがき
並び順はもっと色んな種類が増えると、閲覧の便利さが向上しそうです。
設定されてるステータスの多い順からの並び替えとか、他にも色々と出来そうなんですが、試してみてもうまくいかずアタフタ・・・。
他にも出来たら良いなヾ(´・ω・)ノ゙
あと、xampp環境では並び替え時にエラーが出ちゃうんですが、レンタル等のLinux鯖では正常動作。
この違いが判らんです。。。ショボン
- Ver.2.1.2で確認
高い順、いいですねー
商品によっては、高いモノから売れたりしますからね。
コメントに気付かないままでした。。。すいません_| ̄|○
商品の色んな見方は、あるに越した事ないですよね。
コメントありがとうございましたー。