バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品レビューの多い順、レビュー評価の高い順に並べ替えたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
YOHBUN
投稿日時: 2019/7/11 14:43
対応状況: −−−
常連
登録日: 2016/12/20
居住地:
投稿: 69
商品レビューの多い順、レビュー評価の高い順に並べ替えたい
EC CUBE 3.0.13

レビュー管理プラグイン
https://www.ec-cube.net/products/detail.php?product_id=1065
をインストールし、商品レビューの投稿機能を追加しました。

商品一覧でレビューの多い順、レビュー評価の高い順に並べかえたいのですが、行き詰まってしまいました。
どなたか助けて頂けると幸いです。

ProductRepository.php

//レビューの多い順
} else if (!empty($searchData['orderby']) && $searchData['orderby']->getId() == 9) {
$qb->addSelect('COUNT(r.id) as HIDDEN review');
$qb->innerJoin('p.ProductClasses', 'pc');
$qb->leftJoin('p.ProductReview', 'r');
$qb->groupBy('p.id');
$qb->orderBy('review', 'DESC');
$qb->addOrderBy('p.id', 'ASC');


Eccube.Entity.Product.dcm.yml
にProductReviewを追記して、
プラグインのEntityを読み込む記述がいるのかと思いましたが、
うまくいきません。

宜しくお願い致します。
nyorai
投稿日時: 2019/7/12 13:40
対応状況: −−−
長老
登録日: 2015/8/21
居住地:
投稿: 289
Re: 商品レビューの多い順、レビュー評価の高い順に並べ替えたい
ProductとProdcutReviewはリレーションがないので、この記述ではjoinできないですね。

$qb->leftJoin(ProductReview::class, 'r', 'WITH', 'p.id = r.id');

のような書き方でどうでしょうか。

参考
https://www.tomcky.net/entry/2018/02/13/015617
https://blog.tai2.net/doctrine-join-with-syntax.html
YOHBUN
投稿日時: 2019/7/12 16:46
対応状況: −−−
常連
登録日: 2016/12/20
居住地:
投稿: 69
Re: 商品レビューの多い順、レビュー評価の高い順に並べ替えたい
ありがとうございますm(_ _)m

} else if (!empty($searchData['orderby']) && $searchData['orderby']->getId() == 9) {
$qb->addSelect('COUNT(r.id) as HIDDEN review');
$qb->innerJoin('p.ProductClasses', 'pc');
$qb->leftJoin('ProductReview::class', 'r', 'WITH', 'p.id = r.id');
$qb->groupBy('p.id');
$qb->orderBy('review', 'DESC'); // レビューの多い登録
$qb->addOrderBy('p.id', 'ASC'); // 品番(昇順)

こちらですとこのようなエラーが出ました。。

ORMException in ORMException.php line 236:
Unknown Entity namespace alias 'ProductReview'.
YOHBUN
投稿日時: 2019/7/12 19:38
対応状況: −−−
常連
登録日: 2016/12/20
居住地:
投稿: 69
Re: 商品レビューの多い順、レビュー評価の高い順に並べ替えたい
::classの部分はデータベースのテーブル名を入れればいいのでしょうか。
それでもやはりうまくいきませんでしたが。。
h_tanaka
投稿日時: 2019/7/19 11:54
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 932
Re: 商品レビューの多い順、レビュー評価の高い順に並べ替えたい
プラグインなのでこうですかね。
$qb->leftJoin('\Plugin\ProductReview\Entity\ProductReview', 'r', 'WITH', 'p.id = r.Product');


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

ec-cube.co

統計情報

総メンバー数は52,595名です
総投稿数は93,825件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
2010
4
468
1873
5
yuh
1610
6
red
1359
7
umebius
1343
8
h_tanaka
932
9
fukap
907
10
tsuji
856
11
shutta
835
12 ramrun 789
13
tao_s
780
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 437


ネットショップの壺

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

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