質問 > 管理機能 > 商品一覧を更新順で表示させたい |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
NSX-R |
投稿日時: 2018/10/23 19:36
対応状況: −−−
|
長老 登録日: 2012/12/14 居住地: 投稿: 234 |
商品一覧を更新順で表示させたい いつも大変お世話なっております
商品一覧でソートを新着順ではなくて、更新順で並べ替えたいのですがどのようにしたら良いでしょうか? また、デフォルトでは安い順なのでそれを更新順をデフォルトにするにはどのようにしたら良いでしょうか? どうぞよろしくおねがいします。 |
sw_tm |
投稿日時: 2018/10/24 10:34
対応状況: −−−
|
常連 登録日: 2018/5/25 居住地: 投稿: 43 |
Re: 商品一覧を更新順で表示させたい 2点修正が必要です。
・マスターテーブル「mtb_product_list_order_by 」に「更新順」を追加 例 引用:
・クエリに「更新順」を追加 https://github.com/EC-CUBE/ec-cube/blob/fe9b2010046ac9e859305e72fead23ce67ebe8e3/src/Eccube/Repository/ProductRepository.php#L167-L204 |
NSX-R |
投稿日時: 2018/10/25 11:13
対応状況: −−−
|
長老 登録日: 2012/12/14 居住地: 投稿: 234 |
Re: 商品一覧を更新順で表示させたい sw_tm様
どうもありがとうございます 早速やってみます。 |
NSX-R |
投稿日時: 2018/10/30 11:28
対応状況: −−−
|
長老 登録日: 2012/12/14 居住地: 投稿: 234 |
Re: 商品一覧を更新順で表示させたい sw_tm様、いつもお世話になっております。
教えて頂いたようにデータベースに更新順を追加しようとしましたが、 xserverのphpMyAdminではエラーが出てクエリー出来なかったのですが、 マスターデータ管理より 4 更新順 と設定いたしました。 その後、下記の部分に更新順を入れたいのですが、どのように記述したら良いでしょうか? よろしくおねがいします。 // Order By // 価格低い順 $config = $this->eccubeConfig; if (!empty($searchData['orderby']) && $searchData['orderby']->getId() == $config['eccube_product_order_price_lower']) { //@see http://doctrine-orm.readthedocs.org/en/latest/reference/dql-doctrine-query-language.html $qb->addSelect('MIN(pc.price02) as HIDDEN price02_min'); $qb->innerJoin('p.ProductClasses', 'pc'); $qb->andWhere('pc.visible = true'); $qb->groupBy('p.id'); $qb->orderBy('price02_min', 'ASC'); $qb->addOrderBy('p.id', 'DESC'); // 価格高い順 } elseif (!empty($searchData['orderby']) && $searchData['orderby']->getId() == $config['eccube_product_order_price_higher']) { $qb->addSelect('MAX(pc.price02) as HIDDEN price02_max'); $qb->innerJoin('p.ProductClasses', 'pc'); $qb->andWhere('pc.visible = true'); $qb->groupBy('p.id'); $qb->orderBy('price02_max', 'DESC'); $qb->addOrderBy('p.id', 'DESC'); // 新着順 } elseif (!empty($searchData['orderby']) && $searchData['orderby']->getId() == $config['eccube_product_order_newer']) { // 在庫切れ商品非表示の設定が有効時対応 // @see https://github.com/EC-CUBE/ec-cube/issues/1998 if ($this->getEntityManager()->getFilters()->isEnabled('option_nostock_hidden') == true) { $qb->innerJoin('p.ProductClasses', 'pc'); $qb->andWhere('pc.visible = true'); } $qb->orderBy('p.create_date', 'DESC'); $qb->addOrderBy('p.id', 'DESC'); } else { if ($categoryJoin === false) { $qb ->leftJoin('p.ProductCategories', 'pct') ->leftJoin('pct.Category', 'c'); } $qb ->addOrderBy('p.id', 'DESC'); } |
sw_tm |
投稿日時: 2018/10/30 19:21
対応状況: −−−
|
常連 登録日: 2018/5/25 居住地: 投稿: 43 |
Re: 商品一覧を更新順で表示させたい 以下のように更新順のif文を追加してみてください。
ポイント ・if文の条件に追加したレコードのIDを定義 ・orderByに「update_date」を指定
|
NSX-R |
投稿日時: 2018/10/31 18:21
対応状況: −−−
|
長老 登録日: 2012/12/14 居住地: 投稿: 234 |
Re: 商品一覧を更新順で表示させたい sw_tm様
更新順で並べ替えできました どうもありがとうございましたm(_ _)m |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |