从 Shopify 脚本迁移到 Shopify Functions

Shopify Functions与 Shopify 脚本类似,两者都允许开发人员创建自定义商务体验。

Shopify Functions

Shopify Functions 随应用一起安装。系统直接在 Shopify 后台中将 Shopify Functions 与其他功能一起配置,这意味着商家在创建或修改自定义项时不需要使用代码。与运行 Shopify 脚本相比,运行 Shopify Functions 的 WebAssembly 平台的性能更高,可在 5 毫秒以内执行代码。因此,Shopify Functions 可以支持大型促销活动,例如限时抢购,同时性能不会降低。

通过使用 Shopify Functions,开发人员可以在其自己的本地环境中进行编码和单元测试。开发人员在应用中分发 Shopify Functions 自定义项,而不是将 Ruby 代码复制并粘贴到每个商店中。最后,使用 Shopify Functions 可减少超时和 CPU 内存限制问题。

迁移到 Shopify Functions

迁移到 Shopify Functions 时,建议先使用基于配送和付款自定义项 Shopify Functions 的应用并将它们与订单项目折扣脚本配合使用。当您熟练使用配送和付款 Shopify Functions 时,您便可以开始使用折扣 Shopify Functions。

步骤:

  1. 在 Shopify 后台,转到应用 > Script Editor
  2. 查看现有脚本。请参阅折扣配送付款比较表,确定哪些脚本可以通过使用 Shopify Functions 进行替换。
  3. 如果无法使用 Shopify Functions 替换某个脚本,请继续使用该脚本,直到 Shopify Functions API 能够满足您的需求为止
  4. 如果可以使用 Shopify Functions 替换脚本,请执行以下一项操作:

  5. 确定满足您需求的基于 Shopify Functions 的应用后,在您的商店中安装该应用,然后在 Shopify 后台中配置该应用的设置。

  6. 测试应用以验证应用是否满足预期需求。如果应用符合您的要求,请停用基于 Shopify Functions的应用要替换的脚本。

配合使用 Shopify 脚本和 Shopify Functions

在 2024 年 8 月 13 日之前,Shopify 脚本将继续用于使用 checkout.liquid 自定义的结账流程以及升级为 Checkout Extensibility 的结账流程。

可以在一个商店中同时使用 Shopify 脚本和 Shopify Functions。如果您的脚本当前无法替换为 Shopify Functions,请继续使用 Shopify 脚本,直到 Shopify Functions API 满足您的需求为止。请参阅以下内容,了解 Shopify 脚本和 Shopify Functions 之间的交互方式。

订单项目脚本

订单项目脚本在 Shopify 的折扣逻辑(其中包括由 Shopify Functions 创建的折扣)完成后执行。订单项目脚本可以访问折扣对应的金额。

脚本只能访问应用于结账流程的第一个折扣码,无法访问可能已经使用的其他折扣码。例如,使用 reject 仅会对结账流程中应用的第一个折扣执行操作,而不会影响其他折扣。

发货脚本

发货脚本在 Shopify Functions 创建的发货自定义项之后执行。脚本不能对修改后的配送自定义项重命名结果执行操作,但可以对移动或隐藏的自定义项执行操作。

付款脚本

付款脚本在 Shopify Functions 创建的付款自定义项之后执行。脚本不能对修改后的付款自定义项重命名结果执行操作,但可以对移动或隐藏的自定义项执行操作。

准备好开始使用 Shopify 进行销售了吗?

免费试用