Shopify Dawn主题下如何将特定集合添加至指定页面
Shopify Dawn主题问题解决方案
一、让特定集合仅显示在目标页面
针对你想在游戏页面单独显示品牌集合却出现在所有页面的问题,有两种直接解决方式:
方式1:用自定义页面模板做条件渲染
- 复制默认页面模板:进入「在线商店→主题→Dawn→操作→编辑代码」,找到
templates文件夹下的page.default.json,右键复制后重命名为page.game.json(名称对应你的目标页面,比如游戏页面就命名为game)。 - 给目标页面分配模板:回到页面编辑界面,给你的游戏页面选择刚创建的
page.game模板并保存。 - 控制集合section的显示:
- 若你是在主题编辑器里添加的集合section,直接编辑
page.game.json文件,把品牌集合的section配置只放在这个模板里,默认页面模板page.default.json中不包含该section。 - 若你是直接修改代码,在显示品牌集合的section liquid文件开头添加判断:
{% if template == 'page.game' %} <!-- 此处放置品牌集合的渲染代码 --> {% endif %}
- 若你是在主题编辑器里添加的集合section,直接编辑
方式2:用元字段精准控制
- 给页面添加元字段:在Shopify后台「设置→元字段→页面」,创建一个布尔类型的元字段,比如命名为
show_brand_collection,标签设为"显示品牌集合"。 - 在集合section里添加判断:编辑对应section的liquid代码,仅在元字段为true时显示内容:
{% if page.metafields.custom.show_brand_collection == true %} <!-- 品牌集合内容 --> {% endif %} - 给目标页面开启元字段:打开游戏页面的编辑界面,找到元字段区域,将
show_brand_collection设为true,其他页面保持false即可。
二、无法添加新主题模板的解决办法
从你提供的截图来看,Dawn后台的模板添加入口存在限制,直接手动创建即可:
- 进入主题代码编辑器:「在线商店→主题→Dawn→操作→编辑代码」。
- 创建自定义页面模板:在左侧文件列表找到
templates文件夹,点击「添加新模板」,模板类型选page,输入模板名称(比如game),点击「创建」。 - 配置模板内容:新创建的
page.game.liquid(或json)文件可复制默认页面模板的内容修改,或直接引用需要的section。 - 回到页面编辑页:此时就能在模板下拉菜单里看到刚创建的
page.game模板选项了。
注意:如果使用托管版Dawn,确保你有代码编辑权限——Dawn是开源免费主题,一般不会有权限限制,手动创建模板是最可靠的方式。
内容的提问来源于stack exchange,提问作者duge007
相关产品推荐
相关产品推荐

