Shopify Online Store 2.0

section 改了 schema 的 id 后模板里的设置全丢

现象#

把 section schema 中的 "id": "heading" 改名成 title 并保存,首页原本的标题立刻回到默认值,编辑器对应输入框也变空。

原因#

  • JSON 模板以 setting id 作键存值,schema 内找不到同名 id 的键在读取阶段就被忽略
  • 被忽略的键不会马上从文件里消失,但编辑器下次保存会按当前 schema 重写整份 section 数据
  • 同一 section 在多个模板里有副本,改名后所有副本同时失效
  • 把 id 改动当成文案调整处理,没有迁移 templates 与 section group 中的存量值

处理步骤#

  1. 先保留旧 id,同时新增新 id,输出时用 | default: 依次回退两个键
  2. 把 templates 下各 JSON 里的旧键值复制到新键,保持值不变
  3. 确认引用该 section 的模板与 sections/header-group.json 都已迁移
  4. 删除旧 id,再退出并重新打开编辑器,让设置按新 id 重新读取
  5. 改动前用 git diff 记录模板变化,便于回滚

验收标准#

编辑器输入框回显原有文案,前台标题与改名前一致,模板文件中不再出现旧 id 键。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。