blocks 下 liquid 文件名会影响区块 handle 吗
现象#
把区块文件命名为 Product Reviews.liquid,部署后在主题编辑器里显示成一串带空格的名字,拖进 section 时报 block 类型无效。
原因#
- block 的 handle 直接取自 liquid 文件名,大写和空格会生成非法标识
- schema 里的
name才是商家看到的标题,和文件名职责不同 - 两个文件仅大小写不同会生成同一个 handle,后部署的覆盖前一个
- 改名后旧 handle 失效,模板 JSON 里的引用变成孤儿
处理步骤#
- 把文件改成小写短横线形式,如
blocks/product-reviews.liquid - schema 里加
"name": "Product reviews"作为展示名 - 确认
"target": "section",否则不会出现在应用区块列表 - 重新部署后在编辑器添加一次,检查 handle 是否为 product-reviews
- 从模板 JSON 删除旧 block 再重新添加,避免残留引用
验收标准#
编辑器显示 Product reviews,模板 JSON 里的 type 为 shopify://apps/{app-handle}/blocks/product-reviews/{uid}。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。