Shopify标签总项目

时间:2014-06-04 07:46:42

标签: php shopify

在Shopify中,如何显示标签列表,后跟带有该标签的产品数量?

示例:黑色(12),蓝色(10)。

目前代码看起来像这样,但它不起作用。

<ul>
    {% for tag in collection.all_tags %}
        <li>
            <a href="https://mystore.myshopify.com/collections/all/{{ tag }}">
                {{ tag }}
            </a>
            ({{ tag.products_count }})
        </li>
    {% endfor %}
</ul>

2 个答案:

答案 0 :(得分:4)

products_countcollection的属性,而不是tag

我相信您需要手动循环浏览产品并使用指定的标记计算数字。

例如:

{% assign collection = collections.all %}

<ul>
    {% for tag in collection.all_tags %}

        {% assign products_count = 0 %}
        {% for product in collection.products %}
            {% if product.tags contains tag %}
                {% assign products_count = products_count | plus: 1 %}
            {% endif %}
        {% endfor %}

        <li>
            <a href="https://mystore.myshopify.com/collections/all/{{ tag }}">
                {{ tag }}
            </a>
            ({{ products_count }})
        </li>
    {% endfor %}
</ul>

在Shopify论坛上查看这些类似的讨论:

答案 1 :(得分:0)

Steph的解决方案正在工作。但是,如果我启用了分组标签并想显示产品数量。请让我知道在以下代码中追加产品数量的解决方案:

'{%comment%} code for color, designer, material sidebar filter {%endcomment%}

          {%- for tag in collection.all_tags -%}
            
            {%- assign tag_parts = tag | split: '_' -%}

            {%- if tag_parts.size != 2 -%}
              {%- continue -%}
            {%- endif -%}

            {%- assign groups = groups | append: tag_parts.first | append: ',' -%} 
          {% endfor %}


    {%comment%} End of  code for color, designer, material sidebar filter {%endcomment%}'