You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Shopify API获取购物车及商品页的Liquid模板文件名?

如何获取Shopify购物车/商品页的Liquid模板文件名

核心结论

可以通过Shopify Admin API或者Liquid内置变量获取目标页面的模板/section文件名,分两种场景处理:


1. 通过Shopify Admin API获取(适合批量/后台操作)

步骤1:获取当前活跃主题ID

先调用Admin API获取店铺的主题列表,筛选出role为main的主题(即当前正在使用的主题):

GET /admin/api/2024-07/themes.json

返回结果中找到{"role": "main"}的主题,记录它的id。

步骤2:获取主题下的所有资产文件

用主题ID调用资产列表API:

GET /admin/api/2024-07/themes/{theme_id}/assets.json

遍历返回的assets数组,根据页面类型筛选目标文件:

购物车页面

  • 传统主题:查找key为templates/cart.liquid的文件
  • Online Store 2.0主题:先找templates/cart.json,解析这个JSON文件的sections字段(通常会有"main": "main-cart"这样的配置),对应的section文件是sections/main-cart.liquid
  • 额外排查:部分主题可能自定义命名,比如templates/cart-custom.liquid或sections/cart-main.liquid,可以通过key包含cart的关键词筛选。

商品页面

  • 传统主题:查找key为templates/product.liquid的文件
  • Online Store 2.0主题:先找templates/product.json,解析其sections字段,找到对应的主section(比如sections/main-product.liquid)
  • 自定义模板:可能存在templates/product.[suffix].liquid格式的文件(比如templates/product.featured.liquid),这类是商品的自定义模板,需根据实际需求筛选。

2. 通过Liquid内置变量获取(适合前端/模板内操作)

如果你的代码是在Liquid模板中执行,可以直接用Shopify内置变量获取当前页面的模板信息:

  • {{ template }}:返回当前页面的模板标识,比如购物车页返回cart,商品页返回product;如果使用了自定义模板,会返回cart.[suffix]或product.[suffix]
  • {{ template_suffix }}:返回自定义模板的后缀部分,比如使用templates/cart.main-cart.liquid时,该变量返回main-cart
  • {{ section.id }}:在Online Store 2.0的section文件中,返回当前section的文件名(比如main-cart)

举个例子,在购物车页面的Liquid代码中,输出模板信息:

当前模板标识: {{ template }}
{% if template_suffix %}
自定义模板后缀: {{ template_suffix }}
{% endif %}

注意事项

  • Online Store 2.0主题普遍使用JSON模板+section的结构,核心代码通常在sections/目录下,而非templates/的Liquid文件
  • 部分主题可能将购物车/商品逻辑拆分到多个section中,需要根据实际代码结构判断注入位置

内容的提问来源于stack exchange,提问作者Extreme_Tough

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 19:28:19