Shopify 主题开发路线:OS 2.0 与 Liquid 的工程化实践

Created on

前言

主题开发决定了消费者在店铺里看到的每一个像素。它更前端、更贴近转化,但也要遵守 Shopify 的结构规范。Online Store 2.0 提供了 JSON 模板和可配置区块,让主题开发变得更像组件化工程。

本文面向工程师,从结构、工具链到最佳实践给出清晰路径。

1. 适用场景

2. 核心技术栈

3. 本地开发与调试

主题开发的本地方式:

shopify theme dev

如果你在应用项目内开发主题扩展:

shopify app dev

4. OS 2.0 目录结构

JSON 模板示例:

{
  "sections": {
    "main": { "type": "main-product" },
    "usp": { "type": "usp-block" }
  },
  "order": ["main", "usp"]
}

5. Section 工程化建议

Liquid schema 示例:

{% schema %}
{
  "name": "Hero Banner",
  "settings": [
    { "type": "text", "id": "title", "label": "标题" },
    { "type": "image_picker", "id": "bg", "label": "背景图" }
  ]
}
{% endschema %}

6. Theme App Extensions:避免直接改主题

如果你的功能来自 App,请优先用 Theme App Extensions:

生成方式:

shopify app generate extension

选择 Theme app extension,并在 block 中渲染你的内容。

7. 常见坑

结语

主题开发的核心是结构化、可配置和可维护。OS 2.0 已经把最佳实践写进了平台,你需要做的是遵循它,并把复杂业务放到数据或应用层,而不是塞进 Liquid。这样主题才不会失控。