質問 > フロント機能 > 任意のカテゴリーに登録されている商品をループさせたいです。 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
yashipo |
投稿日時: 2019/12/24 10:33
対応状況: −−−
|
新米 登録日: 2019/11/27 居住地: 投稿: 6 |
任意のカテゴリーに登録されている商品をループさせたいです。 ▼テンプレート
[EC-CUBE]4.0.2 [レンタルサーバ]sakura [OS]window10 [PHP]7.3.9 [データベース]MySQL 5.7.28-log [WEBサーバ]Apache [ブラウザ]chrome [導入プラグインの有無] [カスタマイズの有無] [現象] お世話になっております。 昨日、「TOPページに特定のカテゴリーをループさせたいのですがどのようにすればいいでしょうか?」というスレッドで質問させて頂きました。ご教授頂きましてありがとうございます。無事特定のカテゴリーをトップページでループさせることが出来ました。 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=23192&forum=10 今回お聞きしたいのは、上記の条件でさらに「任意のカテゴリーに登録されている商品をループさせる方法」です。 例えば、「ピックアップ商品」というカテゴリーを作成し、そこに属している商品のみをループさせるといった感じです。任意のカテゴリーの配列からさらに商品データを抽出するのかと思い挑戦しましたがうまくいきませんでした。ご教授頂けたら幸いです。 なお任意のカテゴリーをループさせるのは下記のコードでうまくいきました。 {% set Categories = repository('Eccube\\Entity\\Category').getList(repository('Eccube\\Entity\\Category').find(30)) %} {% macro tree(Category) %} {% from _self import tree %} <a href="{{ url('product_list') }}?category_id={{ Category.id }}"> {{ Category.name }} </a> {% if Category.children|length > 0 %} <ul> {% for ChildCategory in Category.children %} <li> {{ tree(ChildCategory) }} </li> {% endfor %} </ul> {% endif %} {% endmacro %} {# @see https://github.com/bolt/bolt/pull/2388 #} {% from _self import tree %} <div class="ec-categoryNaviRole"> <div class="ec-itemNav"> <ul class="ec-itemNav__nav"> {% for Category in Categories %} <li> {{ tree(Category) }} </li> {% endfor %} </ul> </div> </div> |
468 |
投稿日時: 2020/1/8 11:46
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 任意のカテゴリーに登録されている商品をループさせたいです。 Category.productCategoriesでカテゴリと商品の紐付けを取り出す事が出来るかと思います。
さらに取り出したProductCategoryからProductCategory.productで 商品情報を取り出せます。 {% for ProductCategory in Category.productCategories %} 商品ID:{{ProductCategory.product.id }} 商品名:{{ProductCategory.product.name }} {% endfor %}
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |