乐于分享
好东西不私藏

Shopify 新一代 App 基础设施

Shopify 新一代 App 基础设施

Shopify 正在把 Analytics、Events 和 Liquid 变成新一代 App 基础设施

Shopify 7 月这一组开发者更新,表面上分散在三个方向:Analytics、Storefront Events / Actions,以及 Liquid 的 block / partial。

但如果把它们放在一起看,信号很清楚:Shopify 正在把过去由 App、主题和外部服务各自解决的能力,逐步沉到平台层,变成下一代 App 可以直接调用的基础设施。

 这不是一次简单的功能更新,而是 Shopify 在重塑 App 的开发边界:数据、交互和页面结构,都开始有更标准的表达方式。   

一、Analytics 不再只是后台报表,而是 App 的数据平台

过去,很多 Shopify App 一旦要给商家提供分析能力,就会自然走向一套自建系统:同步数据、建数据仓库、接图表库、处理币种和本地化,再想办法把 UI 做得像 Shopify Admin。

这套模式能跑,但成本很高。更麻烦的是,商家的决策会被拆散:Shopify Admin 里看一部分数据,App 后台里再看另一部分数据。

Shopify 这次推出的 app analytics 能力,正是在解决这个问题。Shopify Analytics 开始变成 App 可以直接构建其上的平台能力。

其中一个变化,是 Metafields 可以被标记为可进入分析查询。比如订单上的营销来源、客户上的订阅状态,都可以作为 ShopifyQL 里的维度,和 Shopify 原生销售数据一起查询、分组和过滤。

另一个变化,是 App Events 进入 early access。App 自己产生的事件,不再只能留在自己的后台里,而是可以进入 Shopify Analytics,成为商家分析经营动作的一部分。

同时,ShopifyQL API 也被推到更正式的位置。它不只是一个查询语法,而是有版本、有 schema 文档、有明确指标和维度说明的分析层。对开发者来说,这意味着可以围绕一个更稳定的接口构建分析能力;对 AI Agent 来说,也意味着它可以根据公开 schema 生成更可靠的 ShopifyQL。

展示层也在被平台化。Shopify 把 Admin 里使用的 Analytics Web Components 开放给第三方 App。开发者可以直接用指标卡、指标栏和日期选择器组件渲染 ShopifyQL 查询结果,而不必自己维护图表库、币种格式、本地化和数据展示细节。

这会改变 App 的产品形态。未来很多 App 后台里的“分析页”,可能不再是一个孤立页面,而是嵌入到 Shopify 原生决策流里的数据模块。

二、Events / Actions 正在统一主题、App 和 Agent 的交互语言

Shopify 发布的 Standard storefront events and actions,放在这一组更新里看也很关键。

它给 Liquid storefront 定义了一层标准通信机制:主题负责发出 Events,App 和 Agent 可以调用 Actions。

Events 是标准 DOM 事件,用来描述店面里的电商行为,例如商品被浏览、购物车行项目发生变化、搜索状态更新。App 开发者可以直接订阅这些事件,并拿到 payload,不需要再针对不同主题猜 DOM、绑私有事件,或者额外请求 API 补数据。

Actions 则是反方向的能力。App 或 Agent 可以调用 Shopify 提供的标准动作来更新购物车、读取购物车、打开购物车。默认情况下,这些动作会调用 Storefront API 并刷新页面;主题开发者也可以覆盖默认行为,跳过刷新,直接更新 UI。Action 成功后,还会发出对应 Event。

这套机制最有价值的地方,是降低主题适配成本。以前一个购物车增强 App,可能要适配一堆主题里的 drawer cart、mini cart、cart page 逻辑。现在 Shopify 开始提供一套标准动作和事件,让主题、App、Agent 都围绕同一套语言协作。

这也是 Agent-friendly 的关键基础。Agent 想要稳定操作 storefront,不能依赖“猜按钮在哪里”。它需要明确的 action,需要可预测的结果事件。Standard Events / Actions 正是在补这块底座。

三、Liquid block / partial 让主题结构更可组合

Liquid July ’26 developer preview 引入了两个新标签:block 和 partial。

block 用来在 Liquid 模板里直接渲染可复用的 theme block。开发者可以给 block 命名、传参,并提供 body 内容,使用体验接近 render。

partial 则定义一块具名的服务端渲染 HTML 区域,JavaScript 可以单独刷新这块区域,而不必重载整个页面。

这两个能力放在一起,说明 Shopify 希望主题开发继续保持 Liquid-first,而不是把动态交互都推给客户端框架。

过去复杂主题经常在 sections、JSON templates、snippets、schema、JavaScript 之间来回跳。新的 block / partial 让页面结构可以更直接地留在 Liquid 模板里,开发者和代码 Agent 都更容易读懂页面组成。

同时,Shopify 也给 Theme Check 增加了面向 Liquid-first 主题的新规则,用来检查语法错误、复杂度、过大的文件、非法 schema 结构,以及 block 参数、schema 和文档声明之间的不一致。

这点很重要。组件化不是只加语法,必须有静态检查、约束和工具链。否则复杂主题会很快失控。

四、三条线合起来,是 Shopify App 的新基础设施

Analytics、Events、Liquid 看起来分别属于数据、交互和主题。但它们其实在解决同一个问题:App 怎样更稳定地嵌入 Shopify,而不是在 Shopify 外围自建一圈系统。

Analytics 负责统一数据表达和分析展示。Events / Actions 负责统一店面行为和交互控制。Liquid block / partial 负责统一页面结构和局部刷新。

这三者合起来,会让 App 从“外挂式扩展”更进一步变成“平台原生模块”。

一个未来的 Shopify App,可能会把自己的业务数据放进 Shopify Analytics,用 ShopifyQL 和 Analytics Web Components 展示分析,用 Standard Events 监听 storefront 行为,用 Standard Actions 操作购物车、搜索和 UI,再用 Liquid block / partial 把前端模块以更可组合的方式嵌入主题。

这套路径比过去更少依赖私有约定,也更适合 AI Agent 参与开发和运营。因为 Agent 需要的不是“网页上某个按钮的大概位置”,而是 schema、event、action、component 这些稳定接口。

五、开发团队现在应该做什么

短期不需要立刻重构所有东西。更现实的优先级,是先盘点 App 数据,看哪些字段适合进入 Shopify Analytics,哪些行为适合变成 App Events。营销来源、订阅状态、会员等级、活动触达、邮件发送、推荐归因,都是典型候选。

其次,可以评估现有分析页是否有机会迁移到 Shopify 原生能力。如果 App 后台里有大量自建图表,可以先用 ShopifyQL 和 Analytics Web Components 做一个小范围原型。重点不是替换全部功能,而是判断哪些指标更适合出现在 Shopify Admin 的决策流里。

第三,在主题和 App 里逐步兼容 Standard Events / Actions。尤其是购物车、搜索、商品浏览这些高频交互,越早接入标准事件,后续主题适配和 Agent 自动化的成本越低。

最后,可以用开发店测试 Liquid July ’26 preview。block / partial 目前仍是 developer preview,不建议直接押注生产主题。但它值得用测试主题评估,因为它关系到后续页面组合、局部刷新和代码可维护性的方向。

结语

Shopify 这轮更新的核心,不是让开发者多记几个 API 名字,而是把 App 的基础能力重新平台化。

数据进入 Shopify Analytics,行为通过 Events / Actions 标准化,页面结构继续由 Liquid-first 的组合模型承载。三者共同指向一个趋势:未来优秀的 Shopify App,不只是“接入 Shopify”,而是更深地“长在 Shopify 里”。

对开发团队来说,这既是机会,也是提醒。越早理解这些平台层能力,越能减少重复造轮子,把精力放回真正有差异化的业务逻辑上。