Shopify:如何在集合模板上显示特定集合

问题描述 投票:0回答:2

我正在编辑Section/collection-template.liquid 文件(该文件由模板文件“collection.liquid”引用)。

我的目标是通过标题显示特定的集合。

我尝试了一些在网上找到的不同的东西,但它们有点过时了,所以我猜它们已经改变了,尽管也许我只是错误地进行了更改。

我尝试将现有的 For 循环更改为:

{% for product in collection.products %}

致:

{% for product in collection['Collection Title'].products %}

但该方法似乎不再有效,尽管过去的论坛帖子引用了它。

然后,我尝试保持 For 循环不变,然后立即在调用周围放置一个 If 语句以获取产品的详细信息...不过,编辑 For 循环似乎确实是两种方法中更好的一种。

{% if collection.title == 'Collection Title' %} ... {% endif %}
{% if collection.title contains 'Collection Title' %} ... {% endif %}

这些尝试都没有出现任何结果。

shopify liquid shopify-template
2个回答
15
投票

要访问特定的集合属性,您必须知道集合句柄并使用此类代码:

{{ collections['the-handle'].url }}

因此,为了实现您想做的事情,您可以这样做:

{% assign collection_handle = 'the-handle-of-collection-you-want' %}
{% for product in collections[collection_handle].products %}
    Do your stuff
{% endfor %}

请注意,您无法通过标题访问集合。 仅处理。

了解有关句柄的更多信息: https://help.shopify.com/themes/liquid/basics/handle

HTH


0
投票

使用破折号(-)代替集合名称中的空格,例如“sale potions”,那么它将是“sale-potions”

{% for product in collections['sale-potions'].products %}
  {{- product.title | link_to: product.url }}
{% endfor %}
© www.soinside.com 2019 - 2024. All rights reserved.