質問 > フロント機能 > トップにカテゴリー毎に分けた商品を数点ずつ表示したい。 |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
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 |