脆弱性対応ということで、2.12.4 がリリースされましたね。
そんなわけでさっそくテスト環境にも、2.12.4 を入れてみました。
最近EC-CUBEを触っていないので、リハビリがてらお題をやってみたいと思います。
1.data/Smarty/templates/default/products/list.tpl の 104行目付近に以下のような感じでコード挿入。
これでクリックした時にURLのクエリ文字列に orderby=price_desc が入るようになると思います。
<!--{if $orderby != 'price'}-->
<a href="javascript:fnChangeOrderby('price');">価格順</a>
<!--{else}-->
<strong>価格順</strong>
<!--{/if}-->
<!--{if $orderby != 'price_desc'}-->
<a href="javascript:fnChangeOrderby('price_desc');">価格順(降順)</a>
<!--{else}-->
<strong>価格順(降順)</strong>
<!--{/if}-->
2.data/class/pages/products/LC_Page_Products_List.php で、
lfGetProductsList メソッドに以下のようなコードを挿入。降順=高い順になります。
// 販売価格が安い順
case 'price':
$objProduct->setProductsOrder('price02', 'dtb_products_class', 'ASC');
break;
// 販売価格が高い順
case 'price_desc':
$objProduct->setProductsOrder('price02', 'dtb_products_class', 'DESC');
break;
おそらくこれだけでいけるんじゃないかな。











