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 订单和订阅续订虽然不会被拦截,但仍会计入限制。完整列表见我们的兼容性与已知限制页面。
数量和结账规则的迁移清单
- 列出你的脚本。 打开自定义项报告,如果保留了 Script Editor 代码副本也一并查看。记下每一个涉及数量的行项目脚本。
- 用一句话写出每条规则。 例如"这款卫衣每笔订单最多 2 件"、"批发买家按 12 件的倍数下单"或"超过 $2,000 的订单需审批"。为一句话选择替代方案,比为 Ruby 代码选择要容易。
- 优先使用原生方案。
- 订单金额限制 → Checkout Blocks。
- B2B 起订量和倍数 → B2B 目录数量规则。
- 某件有库存商品的超大购物车 → 加入购物车数量限制(设置 → 结账;仅限跟踪库存的商品)。
- 其余规则选择应用。 面向普通顾客的起订量和倍数、每日或每周上限、跨订单的按客户限制,以及营业时间,都需要验证应用。
- 把消息改写成操作说明,并在商品页面展示限制。
- 测试每条路径。 测试普通结账、Shop Pay、立即购买按钮和草稿订单。然后记下哪些场景不会被检查:POS、订阅续订和订单编辑。
想逐条了解 Shopify 现在原生支持哪些规则,请参阅 Shopify 原生订单限制与应用对比。
OrderRules 的定位
OrderRules 是基于 Shopify 结账验证构建的公开 App Store 应用,因此在任何套餐上都能使用。它涵盖 Scripts 处理得不好或根本无法处理的数量和结账规则:
- 最小订购数量和步进数量,可按商品或变体设置,对所有顾客生效。参见最小订购数量指南。
- 每日、每周和每月上限,可针对全店、单个商品或系列。
- 跨订单的按客户限制,可按订单数、件数、消费金额或重量设置。客户必须登录;参见按客户购买限制。
- 营业时间和节假日休店,会关闭结账。
它不设置最低订单金额(请使用 Checkout Blocks)。它也没有针对单个商品的每笔订单上限;这种需求请使用 Shopify 的加入购物车数量限制,或按客户的每日限制。想了解验证的底层原理,请参阅 Shopify 结账验证详解。
来源
- Shopify 更新日志:Scripts 无法再编辑或发布(2026 年 3 月 12 日) · 自定义项报告(2025 年 2 月 4 日)
- Shopify.dev 更新日志:Shopify Scripts 将于 2026 年 6 月 30 日弃用
- Shopify 帮助中心:Script Editor · 限制 · 过渡到 Functions
- Shopify.dev:Cart and Checkout Validation Function API · Cart Transform · Shopify Functions 可用性
- Shopify 更新日志:Checkout Blocks 订单金额限制面向所有套餐开放(2026 年 4 月 13 日) · B2B 功能面向非 Plus 套餐开放(2026 年 4 月 2 日)
- Shopify 社区:Shopify Scripts 弃用公告(2023 年 2 月)