跳至主要内容
指南

Shopify Scripts 已停用:用 Functions 替代数量限制和结账规则

Jahangir Alam2026年9月28日事实核查于 2026年9月28日14 min read
ScriptFunctionblocks with a message

Shopify Scripts 已于 2026 年 6 月 30 日停止运行。 仍处于发布状态的脚本均已被停用,也没有任何内容被自动迁移。折扣、配送规则和付款规则分别迁移到各自的 Shopify Function API。数量限制和结账规则迁移到 Cart and Checkout Validation(购物车和结账验证),而且行为不同。脚本通常会在不告知客户的情况下降低购物车中的数量;验证 Function 则会拦截结账并显示消息。它同样作用于快捷结账;只要来自 App Store 应用,任何套餐都能使用;还能执行 Scripts 从来做不到的规则:营业时间、每日订单上限,以及跨订单的按客户限制。

最后核实:2026 年 9 月 28 日,依据 Shopify 帮助中心、更新日志和开发者文档。来源列在文末。

声明:OrderRules 是一款结账验证应用,也是下文提到的选项之一。凡是 Shopify 原生工具能解决的,我们都会如实说明。

时间线

日期发生了什么
2023 年 2 月Shopify 宣布 Scripts 将于 2024 年 8 月 13 日结束
之后日期推迟到 2025 年 8 月 28 日,再推迟到 2026 年 6 月 30 日
2025 年 2 月 4 日自定义项报告上线,截止日期为 2026 年 6 月 30 日
2026 年 4 月 15 日Scripts 无法再编辑或发布
2026 年 6 月 30 日所有 Scripts 停止运行

Shopify 帮助中心现在写道:"Any Scripts that were still published on your store have been deactivated and no longer work."(店铺中仍处于发布状态的所有 Scripts 均已被停用,不再生效。)结账照常运行,只是脚本原本的作用不再生效:无论是折扣、隐藏的运费选项,还是数量上限。如果你没有替换数量脚本,那么今天超出旧上限的订单也能顺利下单。

各类脚本的替代方案

Scripts 分三种:行项目、配送和付款。每一种都对应一个 Function API 或一项原生功能。

脚本的作用替代方案备注
行项目折扣、阶梯或买一送一定价、按客户标签定价原生折扣、折扣应用(Discount Function API),或带批量定价的 B2B 目录每个店铺最多 25 个折扣 Function
组合商品或行价格覆盖Cart Transform Function API价格覆盖(lineUpdate)仅限 Plus
隐藏、重命名或重新排序运费选项Delivery Customization Function API每个店铺最多 25 个
隐藏、重命名或重新排序付款方式(例如超过 $500 不提供货到付款)Payment Customization Function API每个店铺最多 25 个
限制数量、起订量、倍数Cart and Checkout Validation Function API拦截结账并显示消息;每个店铺最多 25 个
最低或最高订单金额Checkout Blocks 订单金额限制(原生)自 2026 年 4 月 13 日起所有套餐可用
面向 B2B 买家的最小值、最大值和增量B2B 目录数量规则(原生)自 2026 年 4 月 2 日起所有套餐可用;仅限 B2B 公司买家

要查看你原有的脚本,打开应用 → Script Editor,找到自定义项报告。它涵盖付款、配送和商品折扣脚本,并为每个脚本给出推荐应用和 Function 教程。它不会转换代码。限制数量的脚本会显示为商品折扣(行项目)脚本,而报告不一定会引导你使用验证,所以请手动检查这些脚本。

数量限制:行为变了

这是大多数迁移指南略过的部分。

Scripts 无法拦截结账。 Script API 没有办法拒绝购物车;唯一的"拒绝"只针对折扣码。限制数量的店铺在行项目脚本里用了变通方法:强制降低数量,或者拆分行项目并丢掉多出的件数。客户到达结账时,商品比自己选的少,而且往往没有任何解释。这些是社区里的变通做法,并非文档记载的功能。

Functions 无法修改数量。 Cart Transform 可以展开、合并或重新呈现行项目,但不能减少它们。Function 时代用于限制的工具是 Cart and Checkout Validation。它检查购物车,一旦违反规则,就拦截结账并显示消息,例如"此商品最多可购买 2 件。"

迁移时这意味着:

  • 写好提示消息。 客户触及限制时,会在结账时看到你写的文字。说明要改什么:"删除 1 件后继续",而不是"错误"。
  • 更早展示限制。 在商品页面和购物车中展示限制,让结账消息很少成为意外。验证应用通常会提供主题区块来实现这一点。OrderRules 会在商品页面展示限制,并可将数量输入调整为有效的倍数。
  • 快捷结账同样覆盖。 Shopify 明确表示验证包括快捷结账:Shop Pay、PayPal、Google Pay 和 Apple Pay。仅靠主题实现的数量限制在这些场景中不起作用,因为立即购买按钮会跳过购物车。

Scripts 从来无法执行的规则

Scripts 运行在沙箱中。它们不能发起网络请求,没有数据库,而且用 Shopify 的话说,不能 "involve random or time-based calculations"(涉及随机或基于时间的计算)。它们只能看到当前购物车,以及客户的标签、订单数和累计消费。因此有三类常见规则在 Scripts 中从来无法实现:

规则Scripts 为什么做不到使用验证应用
在营业时间以外关闭结账,或在截单时间后停止当日订单没有基于时间的逻辑结账时按你的时间表检查
限制全店或某个商品每天或每周的订单数没有当天订单的记录应用统计订单,达到上限即拦截结账
跨订单限制单个客户("每位客户终身限购 2 件")没有按商品的购买历史应用记录每位客户的购买,并在结账时检查

如果你曾因为 Scripts 做不到而放弃其中某条规则,现在值得重新考虑。

套餐:不再需要 Plus

Scripts 仅限 Shopify Plus。Functions 不同:

  • 包含 Functions 的公开 App Store 应用在任何套餐上都能使用,包括 Basic。
  • 带 Functions 的自定义应用仍需要 Plus。
  • 自 2026 年 4 月起,Checkout Blocks 订单金额限制和 B2B 数量规则在所有套餐上可用。

因此,已经不再使用 Plus、或从未使用过 Plus 的店铺,也能执行过去需要 Plus 才能实现的结账规则。

验证不运行的地方

验证 Functions 覆盖在线商店结账、快捷结账、购物车、B2B 结账和草稿订单。Shopify 将以下场景列为不支持:

  • POS
  • 订阅续订(定期订单)
  • 订单编辑,无论在后台还是结账时
  • 通过 Create Order API 创建的订单
  • 预购和先试后买购买选项

如果某条规则必须在这些场景中生效,请另作安排,例如为 POS 制定员工操作流程。在 OrderRules 中,POS 订单和订阅续订虽然不会被拦截,但仍会计入限制。完整列表见我们的兼容性与已知限制页面。

数量和结账规则的迁移清单

  1. 列出你的脚本。 打开自定义项报告,如果保留了 Script Editor 代码副本也一并查看。记下每一个涉及数量的行项目脚本。
  2. 用一句话写出每条规则。 例如"这款卫衣每笔订单最多 2 件"、"批发买家按 12 件的倍数下单"或"超过 $2,000 的订单需审批"。为一句话选择替代方案,比为 Ruby 代码选择要容易。
  3. 优先使用原生方案。
    • 订单金额限制 → Checkout Blocks。
    • B2B 起订量和倍数 → B2B 目录数量规则。
    • 某件有库存商品的超大购物车 → 加入购物车数量限制(设置 → 结账;仅限跟踪库存的商品)。
  4. 其余规则选择应用。 面向普通顾客的起订量和倍数、每日或每周上限、跨订单的按客户限制,以及营业时间,都需要验证应用。
  5. 把消息改写成操作说明,并在商品页面展示限制。
  6. 测试每条路径。 测试普通结账、Shop Pay、立即购买按钮和草稿订单。然后记下哪些场景不会被检查:POS、订阅续订和订单编辑。

想逐条了解 Shopify 现在原生支持哪些规则,请参阅 Shopify 原生订单限制与应用对比。

OrderRules 的定位

OrderRules 是基于 Shopify 结账验证构建的公开 App Store 应用,因此在任何套餐上都能使用。它涵盖 Scripts 处理得不好或根本无法处理的数量和结账规则:

  • 最小订购数量和步进数量,可按商品或变体设置,对所有顾客生效。参见最小订购数量指南。
  • 每日、每周和每月上限,可针对全店、单个商品或系列。
  • 跨订单的按客户限制,可按订单数、件数、消费金额或重量设置。客户必须登录;参见按客户购买限制。
  • 营业时间和节假日休店,会关闭结账。

它不设置最低订单金额(请使用 Checkout Blocks)。它也没有针对单个商品的每笔订单上限;这种需求请使用 Shopify 的加入购物车数量限制,或按客户的每日限制。想了解验证的底层原理,请参阅 Shopify 结账验证详解。

来源

常见问题

编辑和发布 Scripts 于 2026 年 4 月 15 日停止,所有 Scripts 于 2026 年 6 月 30 日停止运行。Shopify 表示,店铺中仍处于发布状态的 Scripts 已被停用,不再生效。最初的停用日期是 2024 年 8 月 13 日,后来推迟到 2025 年 8 月 28 日,再推迟到 2026 年 6 月 30 日。

不会。Shopify 在「应用 → Script Editor」中提供自定义项报告,列出你已有的脚本并推荐应用和 Function 教程,但不会转换代码。每一项自定义都需要用应用、原生功能或自定义 Function 重建。

Cart and Checkout Validation Function。行为有所不同:数量脚本通常会在不告知客户的情况下降低购物车中的数量,而验证 Function 会拦截结账,并显示消息说明需要修改什么。Functions 无法悄悄减少数量。

应用不需要。任何套餐的店铺都可以使用包含 Functions 的公开 App Store 应用。只有带 Functions 的自定义应用才需要 Shopify Plus。

能。Scripts 无法使用基于时间的逻辑,看不到客户以往对某个商品的购买记录,也无法拦截结账。验证应用可以在营业时间以外关闭结账、限制每日订单数,并跨订单限制单个客户的购买量。

Shopify 将 POS、订阅续订、订单编辑、Create Order API 以及预购和先试后买购买选项列为不支持。草稿订单和快捷结账(如 Shop Pay、PayPal、Google Pay 和 Apple Pay)均受支持。

正在挑选应用?

查看 OrderRules 与该类别中其他所有 Shopify 应用的对比。

准备好掌控你的订单了吗?

免费试用 OrderRules