質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

Q&A

解決済

1回答

4168閲覧

【EC-CUBE】商品一覧を開いた際のデフォルト表示において、 在庫有り順かつ、商品登録した順に並び替えたい

退会済みユーザー

退会済みユーザー

総合スコア0

EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

0グッド

0クリップ

投稿2016/09/05 12:10

編集2016/09/05 12:16

###前提・実現したいこと
ECCUBE 2.12.6でクライアントのECサイトを運営しております。
当方、PHP、データベース等初心者ですので、どうか広い心で質問を聞いていただければ幸いです。

商品一覧において、価格順、在庫有り順、などは実装できたのですが、
商品一覧を開いた際のデフォルト表示において、
在庫有り順かつ、商品登録した順に並び替えたいのです。
色々なブログ記事などを拝見したのですが、解決方法がわかりませんでした。
どうかお助け下さい。

###該当のソースコード
/data/class/pages/products/LC_Page_Products_List.php

/* 商品一覧の表示 */ function lfGetProductsList($searchCondition, $disp_number, $startno, $linemax, &$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('create_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; }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

あデフォルトか $_GET["order"] がブランクか指定以外の場合 default に設定してあるものが並びますが
$_GET["order"] に 存在するものが設定されている場合それになります。

?order=xxxxx となっているリンクはそのソートになります。

2つ以上の order が必要な場合 SC_Product を大幅改造を行うか

SC_Query の setOrder を用いて order by を作成する必要があります。

投稿2016/09/05 12:51

編集2016/09/05 12:59
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問