как отдельно отображать товары по продавцу в жидкости для шопинга? - PullRequest
0 голосов
/ 16 июня 2020

У меня проблема с продуктами Shopify на странице коллекции. Я хочу отображать продукты отдельно на страницах коллекции. У меня одна коллекция [all products] и в ней более 200 товаров. У всех продуктов есть такие продавцы, как Красный , Зеленый , Желтый и так далее. У него более 10 производителей. Если я сделаю это вручную, это сработает, но не ожидается.

{% paginate collection.products by 50 %}
    {% for product in collection.products %}
        {% assign vendor = product.vendor | downcase | replace: ' ', '_' %}
        {% if vendor == 'green' %}
            <h2>Green</h2>
            {% include 'product-card' %}
        {% elsif vendor == 'red' %}
            <h2>Red</h2>
            {% include 'product-card' %}
        {% elsif vendor == 'yellow' %}
            <h2>Yellow</h2>
            {% include 'product-card' %}
        {% endif %}
    {% endfor %}
{% endpaginate %}

Я не хочу устанавливать условие if вручную, потому что я не знаю, сколько у меня поставщиков. Тег поставщика H2 отображается дважды, потому что внутри forloop.

Как я хотел, если поставщик зеленый, то показывать все зеленые продукты поставщика и заголовок не должен быть дважды. Помощь будет принята с благодарностью.

Я хочу, как показано ниже, пример изображения

enter image description here

Примечание: Невозможно показать живой пример, потому что он в Shopify также Store защищен паролем.

1 Ответ

0 голосов
/ 16 июня 2020

Вот как вы можете отобразить до 50 продуктов от одного поставщика (без разбивки на страницы):

{%- for vendor in collection.all_vendors -%}
    <h2>{{ vendor }}</h2>
    {%- assign products = collection.products | where: "vendor", vendor | limit: 1 -%}
    {%- for product in products -%}
        {%- include "product-card" -%}
    {%- endfor -%}
{%- endfor -%}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...