EN
Shopify 知识库 · 概念

主题管理:主题库、发布、回滚与版本

梳理 Shopify 主题库里的添加、预览、复制、发布、下载与删除,主题数量上限,官方页面对回滚与主题版本更新的表述,以及代码编辑器、Shopify CLI 与 GitHub 集成各自的边界。

Online Store > Themes 是店铺主题的库存与切换台:哪个主题在线上、哪些是草稿、怎样备份、怎样把新版本换上去,都在这里完成。本文只说明这套管理动作在官方页面里的样子,以及「回滚」到底有什么可用做法;它不解决主题怎么设计、怎么写(见下方分工),也不替代在真实店铺里的一次发布演练。

本库哪些内容依赖它

本文是主题库与版本管理机制的权威来源,其他文章只写各自语境下的用法:

  • Shopify Theme 交付框架的最后一步要求保存版本、测试条件与「回滚或迁移条件」;本文提供这些条件在平台上的落点。
  • 主题结构与渲染关系回答主题里有什么文件;本文回答主题作为一个整体怎么存放、切换和更新。
  • 官方主题解析固定 Dawn v15.3.0 与 Horizon 4.2.0 作研究基线;Dawn 上游已有更新版本,差异未核对;Horizon 4.2.0 是 2026-10-07 核对时 GitHub 上游 main 的最新提交,此后的上游更新同样不会自动进入基线;店铺里实际安装的主题版本同样不能默认等同该基线。
  • 文件同步差异讨论的是 Content > Files 里的媒体文件,而下载主题不含这些文件(见下),两者是不同的备份对象。
  • 套餐记录 Starter 只能使用 Spotlight 主题,与本文的主题数量上限一并读。

核心对象与概念

对象含义备注
已发布主题顾客当前看到的主题官方页写同一时间只能有一个
Draft themes主题库中未发布的主题发布新主题后,原已发布主题移到这里,官方页写「None of your theme changes are lost」
复制(Duplicate)备份或试验用副本自动命名为「Copy of」加原名
更新副本主题更新产生的新草稿自动带前缀「Updated copy of」
架构版本Vintage、Online Store 2.0、Theme blocks与版本号不是一回事,见下
版本号如 1.0,相对 Theme Store 中该主题的最新版本官方页明确它不同于架构版本
预览未发布主题的预览与分享链接已发布主题不能生成分享预览
Development themeShopify CLI 创建的临时隐藏主题不计入主题上限

在哪里配置

以下菜单名与按钮名均来自各官方页原文;界面文字随版本变化,落地前以店铺当前界面为准。

  • 添加:Online Store 页,从 Add themes > Visit Theme Store 找主题并 Try theme,免费主题为 Add;有 zip 时在 Draft themes 中选 Import theme > Upload zip file,再 Choose File 与 Upload。官方页未写 zip 大小上限,本文不推断。
  • 预览:主题的操作菜单选 Preview,可在 View as 中切换国家与语言,随后 Edit theme 或 Close preview。
  • 分享预览:预览栏里的链接按钮。官方页区分两类:visitor preview 任何拿到 URL 的人可见、无需认证、创建后 2 天过期;merchant preview 需要管理员认证、可访问结账、创建后 30 天过期。不能分享已发布主题的预览。
  • 发布:在 Draft themes 里对目标主题选 Publish,或在主题编辑器顶栏点 Publish 并在弹窗中确认。发布不改变店铺的密码保护(私有模式)设置。
  • 复制、下载、删除:主题的操作菜单里分别是 Duplicate、Download theme file、Delete。下载的 zip 发送到员工登录邮箱,包含主题文件,不含商品、集合、菜单、页面、博客、Content > Files 里的文件。
  • 更新:Theme Store 主题有更新时,Online Store 页出现通知,点 Add to draft themes。官方页写第三方站点购买的主题不支持这种更新。
  • 编辑代码:Online Store 的主题菜单里选 Edit code。

与主题、Liquid 和 API 的连接

官方页对这三个入口的说法各不相同,本文只写所读:

  • 代码编辑器:在 Admin 内查看并编辑主题代码,主题文件含 Liquid、HTML、CSS、JSON、JavaScript;shopify.dev 页写内置 Theme Check。官方页提示只在懂 HTML、CSS 并对 Liquid 有基础了解时编辑,并多次建议先复制主题作备份。
  • Shopify CLI:可对主题做本地预览、push、pull、publish 与 Theme Check。Development theme 闲置七天后会从店铺删除、执行 shopify auth logout 时也会删除;需要持久预览链接时,页面写可把它推送成未发布主题。使用需要店主、带 Themes 权限的员工或带 Manage themes 权限的协作者身份(员工权限见身份与权限)。
  • GitHub 集成:在 Online Store > Themes 里 Add theme > Connect from GitHub,选组织、仓库与分支。一个分支对应一个主题,分支更新会同步到主题,Admin 内的编辑会被提交回分支。仓库须符合默认主题目录结构、需有写权限;断开后不能把同一分支重连回原主题,重连会新建主题;冲突可在 GitHub 解决或强推,也可在主题卡的 Actions > Reset to last commit。shopify.dev 的版本控制页同时写到「仅源码」的仓库形态与该集成不兼容。

应用注入的 app block 或 app embed 属于应用层,见原生配置、应用与开发。

回滚:官方页读到什么

三个层次要分开:

  1. 整站层面:所读的管理主题页、更新页与版本页均未出现名为「一键回滚」的整站功能,更新页也未提供回退到旧版本的机制;这只是「在这些页面范围内未见」,不是平台不存在的证明。官方给出的可用材料是:发布新主题后旧主题移到 Draft themes 且更改不丢失,因此重新 Publish 那个旧主题是把它放回线上的路径(依据发布页的表述,未在店铺实测);编辑前 Duplicate、下载 zip 或用 GitHub 保存,是事前备份。
  2. 更新层面:更新不覆盖当前主题,而是生成「Updated copy of」草稿,可先预览再发布,旧主题保持不动。
  3. 单文件层面:代码编辑器的 Timeline 可比较并恢复单个文件的历史版本。官方限制:它一次只恢复一个文件、不恢复整个主题、无法找回已删除的文件、历史有限、assets 文件夹里的文件没有 Timeline,且恢复会替换整个文件内容,官方建议先把当前内容复制出来。两页对操作名的写法并列:help.shopify.com 写「Restore contents」,shopify.dev 写「Revert contents」;后者还写 Timeline 显示 Liquid 文件的历史版本。

限制、数值与易错点

  • 主题数量上限:发布页、复制页、下载页、删除页均写 20 个,未按套餐区分;添加与预览页则写 Starter 只能添加 Spotlight,Basic、Grow、Advanced 最多 20 个,Shopify Plus 最多 100 个。两处并列,不选边;各页未逐句说明已发布主题是否计入,本文未核验。达到上限后需删除一个才能再复制,或先下载留存。
  • 删除不可撤销:官方页写 Deleting a theme is a permanent action;已发布主题不能直接删除,须先发布另一个主题。
  • 主题更新对自定义的影响:更新页写主题设置、页面布局(增删、排序、隐藏 section 与 block)、section 设置、自定义模板、app embed 与经编辑器改过的文字会带入更新。代码修改若与更新不冲突会一并带入,页面提示为「Theme added: code edits successfully included」或「code edits could not be included」;后者需要手动复制到新版本,官方建议更新前用 diff 工具比对。
  • 架构版本:官方页把主题分为 Vintage(不再于 Theme Store 提供,免费 Vintage 主题只收安全修复)、Online Store 2.0 与 Theme blocks,版本号与之无关。
  • Theme Store 授权:主题只授权给购买它的店铺;转到别的店铺须先下载,且下载不含店铺内容。

验证一次

  1. 在测试店铺 Duplicate 当前已发布主题,确认出现「Copy of」,并记录主题总数与上限的关系。
  2. 对副本做一处设置与一处代码修改,用 Preview 与 View as 切换国家、语言检查,再生成 visitor preview,对照 2 天有效期。
  3. Publish 副本,确认原主题落入 Draft themes;再 Publish 原主题,确认线上恢复。
  4. 在代码编辑器改一个 Liquid 文件与一个 assets 文件,分别查看 Timeline,验证前者可恢复、后者无历史。
  5. 有可更新的 Theme Store 主题时,用 Add to draft themes 生成「Updated copy of」,核对自定义与代码修改带入的提示。

待继续完善

  • 实测发布与恢复的耗时,以及发布后购物车、结账与应用嵌入是否需要复查。
  • 逐套餐核验主题数量上限,并确认已发布主题是否计入。
  • 预览链接与 storefront 密码的关系官方页所读未提及,待核验。