Skip to main content
configure(config) 设定购物车的行为方式。它是一个设置类调用,所以可以安全地放在脚本最顶部,在购物车加载之前调用。
你可以多次调用它,值会合并。后续调用只覆盖它指明的键,其余保持不变。
传入 undefined 会清除一个键,而不是跳过它。configure({ open_on_add_to_cart: undefined }) 会将该选项重置为默认值,丢弃之前调用设置的内容。要保持某个选项不变,请完全省略该键。

选项


open_on_add_to_cart

控制购物者添加产品时抽屉是否打开。
一个常见用法是在某个特定页面上保持抽屉关闭,而在其他所有地方保留商家设置:
如果你只是想在整个商店启用它,它已经是一个设置:Cart settings → Content → Behavior → Open cart when an item is added。当答案取决于页面、购物者或只有你的代码才知道的东西时,才使用 configure

open_on_background_add

将其设为 true,可以让抽屉在后台添加时也打开——即 Aftersell 检测到但并非由它自己处理的添加。 满足以下任一条件的添加算作后台添加:
  • 它通过 Shopify 的标准购物车事件到达(无论由什么触发,始终视为后台),或
  • Aftersell 在网络层看到了购物车请求,但在之前约 3 秒内没有可信的点击或按键——例如另一个应用或脚本正在写入购物车。
Aftersell 在网络层看到的、确实跟随购物者点击的添加不算后台添加:它已经按 open_on_add_to_cart 打开抽屉,不需要这个选项。
这是一个额外的闸门,不是覆盖:只有当 open_on_add_to_cart 本来也允许时,后台添加才会打开抽屉。在 open_on_add_to_cart: 'never' 下,这个选项不起任何作用。
当第三方添加按钮正确添加了商品但抽屉保持关闭时,使用这个选项。如果商品根本没有进入购物车,那是拦截问题。参阅 skip_add_to_cart_interceptor页面构建器使用案例

validate_form_on_add_to_cart

在添加之前运行浏览器的原生表单校验(reportValidity()),并在表单无效时取消添加。当你的产品表单有必填字段(刻字留言、礼品备注、必选复选框)而购物者目前可以跳过时使用它。
浏览器会在有问题的字段上显示自己的校验消息。默认关闭,因为如果主题的产品表单某处有一个多余的 required 属性,否则就会开始静默阻止加入购物车。

skip_add_to_cart_interceptor

完全关闭 Aftersell 的加入购物车拦截。关于拦截具体做什么以及退出它的所有方式,请参阅加入购物车拦截 之后主题会自己执行添加,每一个监听该提交的脚本都会重新运行。Aftersell 仍会在网络层监视购物车请求,所以抽屉照常打开。退出拦截并不会让你失去它。在 Aftersell 识别的主题上,主题自己的购物车保持惰性,所以你不会得到两个购物车。在它不识别的主题上,主题可能会打开自己的购物车与你的并存;参阅主题自己的购物车会不会也打开?
这个选项只在启动时读取一次。它只在购物车加载之前运行的设置类调用中生效:即你购物车的 Initialization 脚本。之后设置它(在 ready() 内部或从事件处理函数中)没有效果,并且会静默失败。
这是一个粗粒度工具,会禁用页面上每个表单的拦截。要只豁免某一个表单,请改用 registerSkipAddToCartRule hook:

skip_open_cart_interceptor

点击购物车图标会打开 Aftersell 抽屉。为了可靠地做到这一点,Aftersell 会阻止这次点击,让页面上没有其他任何东西处理它,这同时也让你的脚本看不到它。如果分析或像素事件在其他地方都触发,唯独在购物车图标上不触发,原因就在这里。 将其设为 true 可停止对点击的静音处理:
之后你的监听器会运行,抽屉仍然会像以前一样打开。点击也仍然不会跳转到 /cart
**这个选项做的事情比名字暗示的要少。**它不会跳过购物车图标拦截器。它只是让拦截器停止对其他监听器的静音处理。Aftersell 仍然处理这次点击,仍然会打开你的购物车。要让 Aftersell 完全忽略某个控件,请改用 aftersell-cart-wont-open-cart 类;参阅加入购物车拦截
skip_add_to_cart_interceptor 不同,这个选项在每次点击时都会读取,所以你可以在任何时候设置它并立即生效:在 ready() 中、在事件处理函数中,或按页面条件设置。
有些主题自身也会响应购物车图标的点击。一旦 Aftersell 停止对它的静音,会打开自己抽屉的主题就会与你的抽屉一起打开。如果开启后看到两个购物车,请在主题的图标上添加 aftersell-cart-wont-open-cart 类,并用 actions.open() 从你自己的处理函数中打开购物车。

money_format

覆盖 formatMoney 使用的 Shopify 货币格式。默认为你商店自己的格式;如果不可用,价格回退为 $X.XX
由于 configure 会合并且 formatMoney 读取实时值,你可以在运行时更改格式,例如在货币切换器触发时:
这只改变 SDK 和购物车显示价格的方式。它不改变向购物者收费的货币;那是 Shopify Markets 的职责。

后续阅读

  • 操作:读取和更改购物车。
  • Hooks:按表单和按行的控制,适用于 configure 过于宽泛的场景。
  • 使用案例:常见需求的完整解决方案。