Shopify Liquid Object 规则

Shopify Liquid Object Rules

来自 Shopify 的演示 https://help.shopify.com/en/themes/liquid/objects

{% for product in collections.frontpage.products %}
  {{ product.title }}
{% endfor %} 

这段代码显示objectcollection输出标题{{ product.title }}

循环 collections.frontpage.products 是从哪里来的?
我在 object 的列表中没有看到 frontpage,这是保留的特殊 object 吗?如果有,还有其他的吗?
像这样将 object 连接在一起的规则是什么?

Shopify 的文档不清楚我可以在哪里以及如何将 object 连接在一起。

您需要阅读更多关于 collections 以及 for 循环如何工作的内容。

下一行 collections.frontpage.products 的意思是 -> 获取 collection 中所有具有名为 frontpage.

句柄的产品

因此,当您以这种方式 collections.COLLECTION_HANDLE 或这种方式 collections[COLLECTION_HANDLE].

定位它的句柄时,您会调用特定的 collection

首页 collection 是 Shopify 自带的默认 collection。另一个默认 collections 是 all collection,它不需要 collection 页面。

因此,如果您转到 Shopify 后台并查看 Products -> Collections,您应该会看到一个名为 Homepage 的 collection,其句柄为 frontpage。您的目标是 collection.


所以回答你的问题 - 不 frontpage 不是一个特殊的 object,它只是一个 collection 的句柄。

您也可以通过这种方式调用不同的 collection collections.all.products 它将 return 所有产品,无论它们附加到哪个 collection,其中 all 是例外,您可以像特殊句柄一样调用它,因为它不需要创建 collection 即可存在。 ( 但同时你可以覆盖它,如果你创建一个 all collection )