Skip to main content

概述

如果折扣模块没有出现在购物车抽屉(cart drawer)中,通常是由于以下列出的某个原因造成的。 在大多数情况下,问题与所使用的折扣类型、旧版购物车系统或主题/应用冲突有关。

原因 1 – 不是真正的 Shopify 折扣

购物车页脚中的 Discount 或 Savings 行只有在购物车应用了真正的 Shopify 折扣时才会显示。 这意味着在以下情况下折扣行不会显示:
  • 由捆绑销售应用创建的模拟或”虚假”折扣
  • 通过调整商品行价格而非应用真正 Shopify 折扣的应用
  • 显示”折扣前”和”折扣后”价格的自定义定价逻辑
  • 在 Shopify 后台设置的原价对比(compare-at)价格 — 默认情况下。这些属于商品价格展示而非生效的折扣,因此折扣行会忽略它们,除非你主动启用(见下文)。
如果没有通过 Shopify 后端应用真正的 Shopify 折扣,折扣行将按设计保持隐藏。
在 Cart Summary 2.0 中,可以包含 compare-at 节省金额。Settings > Cart settings > Advanced Settings 中启用 Show compare-at price savings in footer total,节省金额行就会将每件商品的 compare-at 差价加到已统计的折扣中。只有版本 2 的 Cart Summary 模块会读取此设置——在版本 1 中,节省金额行仍只统计折扣码。请参阅在页脚总计中显示原价对比价格节省金额

捆绑销售应用与折扣

一些捆绑销售或折扣应用使用价格调整,而不是应用真正的 Shopify 折扣。 Shopify 只识别通过 Shopify 后台创建并应用的折扣(折扣码或自动折扣)。如果某个应用:
  • 调整商品行价格
  • 显示”折扣前”和”折扣后”价格
  • 显示计算出的”节省”金额
  • 将多个商品组合成一个折扣捆绑价格
但没有应用真正的 Shopify 折扣对象,Upcart 就不会将其识别为折扣。 因此,购物车页脚中的折扣行将不会显示。

原因 2 - 旧版购物车令牌

一些商店仍在使用 Shopify 的旧版购物车系统,该系统不支持 Upcart 折扣模块所需的功能。检测到这种情况时,Upcart 会自动隐藏折扣模块以避免问题。

如何识别

要检查你的商店是否使用了过时的购物车令牌:
  1. 在启用 Upcart 的情况下向购物车添加一件商品。
  2. 打开浏览器的开发者控制台。
  3. 粘贴并运行以下代码:
  1. 更改任意购物车商品的数量以触发提示。

如何修复

如果确认使用了旧版购物车令牌,你需要联系 Shopify 支持团队或你的主题开发者来更新商店的购物车系统。
请参阅 Shopify 关于 Cart API 迁移的文档。

原因 3 - 主题或应用冲突

来自主题或其他已安装应用的自定义 CSS 或 JavaScript 可能会无意间隐藏折扣模块。

如何识别

检查你的主题和自定义 CSS 中是否存在包含以下内容的样式:
  • display: none;
  • visibility: hidden;
  • opacity: 0;
这些样式可能正作用于折扣模块的容器或其子元素。

如何修复

请联系你的主题开发者或产生冲突的应用的开发者。告知他们折扣模块需要保持可见,并请他们相应地调整其 CSS 或 JavaScript。