templates 里 liquid 与 json 同名模板只能留一个
现象#
主题里 product.liquid 与 product.json 同时存在,改 json 保存成功但前台毫无变化,编辑器加的区块也不出现。
原因#
- 同一模板类型只能以 JSON 或 Liquid 之一存在,两份共存时只有一份被启用
- 从旧主题迁移时把 liquid 模板整体复制过来,覆盖了新版的渲染路径
- 编辑器能打开模板并保存,写回的却是未被使用的那份文件,改动等于没做
- 主题包上传时同名冲突不报错,问题要等前台渲染才暴露
处理步骤#
- 列出目录:
ls templates/product.*,确认是否存在同名的两种后缀 - 只保留需要的一份,把另一份移出 templates 并改名成
.bak备份 - 必须用 Liquid 模板时,把内容改写成
{% section 'main-product' %}形式 - 推送后用编辑器打开该模板,确认侧栏可以正常添加与编辑区块
- 把
templates全部过一遍,检查其它类型是否有同样冲突
验收标准#
每个模板类型只保留一种后缀,编辑器改动保存后前台立即可见。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。