バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > トップにカテゴリー毎に分けた商品を数点ずつ表示したい。

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
Rights
投稿日時: 2019/3/19 22:45
対応状況: −−−
一人前
登録日: 2019/3/12
居住地:
投稿: 99
Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。
ご指摘ありがとうございます。
修正してみました。

$product_tag_ids = array();
foreach ($Product->getProductTag() as $ProductTag) {
$Tag = $ProductTag->getTag();
array_push($product_tag_ids, $Tag->getId());
}

$qb_ext = $this->entityManager->getRepository('Eccube\Entity\Product')->createQueryBuilder('p');
$qb_ext ->innerJoin('p.ProductTag', 'pt')
->innerJoin('pt.Tag', 't');

$view_product_id = $Product->getId();

↓↓↓↓↓現在表示している商品は無条件で除外としたいのですが、否定条件の指示はこれでよいのでしょうか?(パターン1)
$qb_ext ->where('not p.id = :id')
->setParameter('id', $view_product_id);

↓↓↓↓↓現在表示している商品は無条件で除外としたいのですが、否定条件の指示はこれでよいのでしょうか?(パターン2)
 条件が増えると遅くなると聞きますが、単一の条件の場合は、やはりパターン1でしょうか?
$view_product_id = array();
array_push($view_product_id, $Product->getId());

$qb_ext ->where('p.id NOT IN (:id)')
->setParameter('id', $view_product_id);


↓↓↓↓↓このままだと非公開の商品まで表示してしまうため、ステータスが表示のデータのみ
 product_status_id が存在しないとエラーとなりますが、発行しているSQLのSELECT句には、product_status_idの指定がありました。
$qb_ext ->andwhere('product_status_id = :sid')
->setParameter('sid', 1);
$qb_ext ->andwhere('t IN (:ids)')
->setParameter('ids', $product_tag_ids);

$qb_ext ->orderBy('p.update_date', 'desc');

$Products_ext = $qb_ext->setMaxResults(10)->getQuery()->getResult();

非公開の条件を付加するとエラーとなりますが、ここを外すと当初必要とした挙動となります。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 minny 2019/3/17 17:23
     Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 umebius 2019/3/17 23:11
       Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 Rights 2019/3/18 23:02
         Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 umebius 2019/3/19 15:21
           Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 Rights 2019/3/19 20:11
             Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 468 2019/3/19 20:58
               Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 umebius 2019/3/19 21:16
               » Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 Rights 2019/3/19 22:45
                   Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 umebius 2019/3/20 0:11
                     Re: トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 Rights 2019/3/20 10:10

 



ログイン


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

統計情報

総メンバー数は89,080名です
総投稿数は110,027件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1648
8
red
1570
9
mcontact
1296
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.