是否将收藏分配给Shopify中自定义创建的收藏页?
我正在Shopify上使用一个免费的冒险主题,我正在尝试制作一个定制的收藏页面 我在stackoverflow中找到了一个解决方案,但它对某些地方有所帮助。 解决方案概述如下: 复制collection.liquid中的所有内容,并将其粘贴到新代码段中(假设您将其称为collection Copy.liquid)。 然后,在要将集合页面添加到的页面中,只需添加{%include'集合副本'%} 这个解决方案很有效,但我还有一个问题。在自定义创建页面中,它会显示“对不起,此集合中没有产品”。在同一页面的自定义中,有一个“集合”部分。但在“收藏”部分,没有选择收藏的选项。只有“启用标记筛选”和“启用排序”复选框 网页: 您有没有想过用这个自定义创建的代码段分配一个集合是否将收藏分配给Shopify中自定义创建的收藏页?,shopify,Shopify,我正在Shopify上使用一个免费的冒险主题,我正在尝试制作一个定制的收藏页面 我在stackoverflow中找到了一个解决方案,但它对某些地方有所帮助。 解决方案概述如下: 复制collection.liquid中的所有内容,并将其粘贴到新代码段中(假设您将其称为collection Copy.liquid)。 然后,在要将集合页面添加到的页面中,只需添加{%include'集合副本'%} 这个解决方案很有效,但我还有一个问题。在自定义创建页面中,它会显示“对不起,此集合中没有产品”。在同
{%paginate collections[settings.frontpage_collection].products by 20%}
{{collection.title}
{%if当前_标记%}
&恩达什;{%assign title_tags=当前_tags | join:','%}
{{title_tags}}
{%endif%}
{%if collection.description!=空白%}
{{collection.description}}
{%endif%}
{%section'集合筛选器“%”
{%用于集合中的产品。产品%}
{%包括“产品卡”,产品:产品%}
{%else%}
{%comment%}
添加默认产品,以帮助仅针对集合/全部登录。
仅当
这家商店没有商品。
{%endcomment%}
{shop.products_count==0%}
{%assign collection_index=1%}
{(1..10)%中i的%
{%case i%}
{7%时为%7}
{%assign collection_index=1%}
{8%时为%1}
{%assign collection_index=2%}
{9%时为%1}
{%assign collection_index=3%}
{10%时为%1}
{%assign collection_index=4%}
{%endcase%}
{%assign collection_index=collection_index | plus:1%}
{%endfor%}
{%else%}
{%comment%}
如果集合存在但为空,则显示消息
{%endcomment%}
{{'collections.general.no|u匹配'|t}
{%endif%}
{%endfor%}
{%如果paginate.pages>1%}
{{paginate | default | pagination | replace:'laquo;Previous','larr;'| replace:'Next»;','rarr;'}
{%endif%}
{%endpaginate%}
似乎在任何地方都没有定义集合
变量
我建议将代码段的开头改为:
{% paginate collections[settings.frontpage_collection].products by 20 %}
致:
当你在URL中包含/collections/[something]
的页面上时,有一个隐式集合
变量,但当你在URL中包含/page/[something]
时,你在液体中有一个隐式页面
变量
设置设置的集合。frontpage_集合
不是您想要的集合,您可以:
a。使用主题旁边的“自定义”链接(最容易在/admin/themes页面上找到)更改值,如果您不打算将该设置用于任何其他内容,则该设置非常有用
b。硬编码一个集合句柄,例如:collections['i-assure-this-will-never-change']
,但是硬编码字符串很难看,通常应该避免使用
c。通过在config/settings\u schema.json
中添加一个条目来创建您自己的主题设置-查看您是否仍在使用自定义主题设置;或
d。如果您的所有内容都在一个节中,那么您可以使用节设置(类似于主题设置)生成一个变量,该变量专门绑定到该代码块collection
。我们将向该代码段传递一个集合,以便您可以删除assign
语句{%assign collection\u handle='硬编码句柄'%}
,{%assign collection\u handle=page.metafields.related\u items.collection%}
{%include'collection in page',collection:collections[collection\u handle]}
希望这能有所帮助!在接受答案之前,你说得对:))这个解决方案有效,但迫使我为每个集合创建1页和4个流动文件。最后,我发现像“collection.list”这样的部分并没有指向我创建的页面。我想你在回答的开头就谈到了这一点:) 在那之后,我找到了一个更好的解决方案。只需创建一个新的section.liquid文件并将其放置在“collection.liquid”中并使用“if”语句,就解决了我的问题
{%if collection.handle=='less是mor
{% assign collection = collections[settings.frontpage_collection] %}
{% paginate collection.products by 20 %}