求助:Shopify主题商品自定义字段在商品页显示但购物车不显示
排查Shopify自定义字段无法在购物车显示的问题
以下是针对性的排查和解决步骤:
确认购物车模板文件是否正确
检查当前主题实际渲染购物车项的模板是否为main-cart-items.liquid。部分主题可能使用snippets/cart-item.liquid或sections/cart-items.liquid这类文件,而非你修改的main-cart-items.liquid。可以通过主题编辑器的购物车页面,查看关联的模板片段。验证自定义属性是否成功提交
加购填写了自定义字段的商品后,访问店铺的/cart.js路径,查看返回的JSON数据中,对应商品的properties对象是否包含Your name字段。如果这里没有该属性,说明问题出在前端提交环节,而非购物车渲染。检查属性过滤条件
你使用的购物车渲染代码中有{% unless p.last == blank or first_character_in_key == '_' %}的过滤逻辑:- 确认属性键
Your name的首字符不是下划线 - 测试时确保已输入内容(虽然字段加了
required,但部分主题可能绕过表单验证直接加购)
- 确认属性键
排查AJAX加购逻辑
如果主题使用AJAX无刷新加购,检查AJAX提交的代码是否收集了所有name="properties[xxx]"的字段。有些主题的AJAX加购仅收集默认商品信息,未包含自定义属性,需要修改AJAX请求的表单数据,确保携带自定义字段值。确认代码位置正确性
- 商品页的自定义字段代码必须放在
product-form表单内部,否则字段值不会被提交到购物车 - 购物车页的属性渲染代码要放在购物车项的可见区域,避免被CSS样式隐藏
- 商品页的自定义字段代码必须放在
用默认主题验证
临时切换到Shopify官方默认主题(如Dawn),重复添加自定义字段和购物车渲染代码的操作。如果默认主题能正常显示,说明当前主题的模板结构或JS逻辑存在冲突。
内容的提问来源于stack exchange,提问作者Kiwimoisi
相关产品推荐
相关产品推荐

