Cart items 区块是购物车中的商品行列表,渲染顾客添加的每个产品,包括其图片、标题、变体、价格、数量步进器和移除控件。它是必需的区块,也是承载购物车子区块(Product 行、Subscription upgrade 和 Custom code)的容器,为按行显示的子区块提供了挂载结构。

Product 行
该行本身渲染产品图片(可用时链接到产品页面)、标题、变体、价格及任何划线的 compare-at 价格、数量步进器和移除按钮。捆绑商品行会显示其组成部分的展开列表。
文字样式
可设置样式的文字元素按类别分组:
Product(产品)
- Product title(产品标题)— 每行的产品名称。也支持自定义字体族。
- Variant(变体)— 变体标签(例如 Size: Medium)。
- Subscription plan(订阅计划)— 显示在订阅商品行上的只读计划标签。
- Price(价格)— 该行的当前价格。
- Compare-at price(划线价)— 划线的原价。
- Savings(节省)— 节省标签(例如 Save $5.00)。仅支持字号和行高——粗体和颜色在上方的富文本编辑器中设置。
- Bundle toggle(捆绑切换)— 展开捆绑组成商品列表的展开标题。
- Bundle item title(捆绑商品标题)— 捆绑内每个组成商品的标题。
- Bundle item variant(捆绑商品变体)— 每个捆绑组成商品的变体标签。
这些设置仅适用于 Cart items 区块中的商品行折扣标签。Summary 区块中的折扣码标签单独设置样式。
子区块及其定位方式
- 排在 Product 行之前的子区块出现在每行商品内容的上方。
- 排在 Product 行之后的子区块出现在每行商品内容的下方。
行为
- 当购物车中没有商品时,抽屉会切换到空状态,此区块不显示。
- 购物车更改一次只执行一个。 当数量更新或移除操作正在进行时,该行的控件会被禁用以保持购物车一致性,更改完成后重新启用。
- 将某行数量降到 1 以下会将其移除。商店拒绝的数量(例如超出可用库存)会重新同步为最后一个有效值。
- 捆绑商品作为一个整体变化。 调整捆绑锚点行的数量会一次性缩放整个捆绑——如果某个子商品按每个锚点 3 件包含,将锚点从 1 调到 2 会使该子商品变为 6 件。移除锚点会同时移除捆绑的所有成员。
- 有些捆绑无法调整数量。 如果捆绑的任何子商品按小数比例包含(例如每个锚点 1.5 件),该捆绑的数量步进器会被锁定:+/− 按钮和数量字段都被禁用,且不接受输入的数量。该捆绑仍可移除。
- 订阅商品行显示其计划。 当某行有销售计划,且 Subscription upgrade 子区块被关闭或未添加时,Product 行会在变体下方显示只读的计划标签——例如 Delivers every month (save 30%)。当该子区块启用时,它会在自己的选择器中呈现计划,因此只读标签会被隐藏而不是重复显示。
位置与限制
- 区域: 主体。
- 最大数量: 每种购物车状态 1 个。
- 状态: 仅限有商品的购物车。
- 锁定且默认添加。 Cart items 无法移除或隐藏,只能重新定位。
自定义模板
行内容
数量与移除
渲染捆绑商品
bundle.children 保存其内容。子商品永远不会作为独立行出现,因此如果你不渲染它们,顾客将看不到捆绑中包含什么:
key 为 null,因此请如上所示回退到索引。