バージョン選択

フォーラム

メニュー

オンライン状況

41 人のユーザが現在オンラインです。 (32 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 41
もっと...

サイト内検索

質問 > フロント機能 > カテゴリ指定での商品の並び順について

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
dipito
投稿日時: 2017/10/31 18:45
対応状況: −−−
常連
登録日: 2016/9/2
居住地: Aichi
投稿: 41
カテゴリ指定での商品の並び順について
[EC-CUBE]2.13.5

商品管理>商品並び替え
で指定した順番は
"全ての商品"を表示する一覧では問題無いのですが
その商品が属するカテゴリの一覧では全く異なる並び順になっています。

デフォルトでは、どのような並び順になっているのでしょうか?
また、このカテゴリ指定時のデフォルトでの一覧の並びを意図する並びに指定する事は出来ますでしょうか?

なお、デザインテンプレートはオーナーズストアのNo.L0082を使用しています。
468
投稿日時: 2017/11/1 7:44
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリ指定での商品の並び順について
デフォルトでは、検索条件に関係無く更新日の降順になっています。
(更新日の新しいものから上に表示されます)

/data/class/pages/admin/products/LC_Page_Admin_Products.php 129行目付近に

$order = 'update_date DESC';

の記述がありますので、
ここにif文を追加して、カテゴリ選択時の並び順を指定すれば、
意図する並び順に変更する事は可能かと思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

dipito
投稿日時: 2017/11/1 10:16
対応状況: −−−
常連
登録日: 2016/9/2
居住地: Aichi
投稿: 41
Re: カテゴリ指定での商品の並び順について
コメントありがとうございます。

説明不足がありました。
管理画面の一覧ではなく、フロント側の一覧です。

管理画面では確かに更新順で表示されましたが
フロント側では一切変化がありません。

フロント側には「価格順」「新着順」というボタンが出ているので
少なくともこの並び順ではないはずです。
ID順にもなっておりません。

もう少し調べてみました。
/data/class/pages/products/LC_Page_Products_List.phpの
商品一覧の表示の処理を行う関数には
$objQuery->setOrder("($sub_sql) DESC ,product_id DESC");
がありましたが、綺麗な降順にはなっておらず…。
ここから並び順がさらに変わってしまう条件があるのでしょうか。
468
投稿日時: 2017/11/3 4:46
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリ指定での商品の並び順について
$objQuery->setOrder("($sub_sql) DESC ,product_id DESC");の直前で、
$sub_sqlを組み立てていると思いますが、
その中身を確認すると、
dtb_product_categories.rankとdtb_category.rankを利用して計算した数値を降順になるように指定しているようです。

dtb_product_categories.rankを利用している事から、
カテゴリに紐づけた順番が関係しているようですので、
商品編集画面などでカテゴリの選択を変更すると、
フロントの商品一覧の順番が変わってくると思います。

また、dtb_category.rankの値が優先されるようになっていますので、
カテゴリを追加すると、新しいカテゴリに所属する商品から表示されるのではないでしょうか?

カテゴリやカテゴリとの紐づけに左右されず、商品の情報で表示したい場合は、
$objQuery->setOrder("($sub_sql) DESC ,product_id DESC");
の所を、
価格順や新着順のように
$objProduct->setProductsOrder('price02', 'dtb_products_class', 'ASC');
$objProduct->setProductsOrder('create_date', 'dtb_products', 'DESC');
シンプルな記述に変更するのが良いかと思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

dipito
投稿日時: 2017/11/6 18:30
対応状況: −−−
常連
登録日: 2016/9/2
居住地: Aichi
投稿: 41
Re: カテゴリ指定での商品の並び順について
ご丁寧な回答ありがとうございます。
納得出来ました。
これにて解決とさせて頂きます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,688名です
総投稿数は109,934件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1569
9
mcontact
1280
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.