从商品模块为单个商品铸造一次性 WooCommerce 优惠券

项目级的折扣优惠面向整个受众,发放一个全店(或单一商品)通用的优惠券。这是它更精细的、模块级的搭档:折扣直接挂在商品模块本身上,绑定你从 WooCommerce 商品目录导入的一件真实商品,在每位收件人的邮件发送的那一刻按人铸造,并直接应用在该商品自己的页面上——不需要购买历史分群,也不需要设置折扣优惠。

一个链接到你 WooCommerce 商店的工作室商品模块,可以为每位收件人铸造它自己的一次性优惠券,限定于那一件商品——不需要购买历史分群,也不需要项目级的折扣优惠。

MailInApp 已经有一个项目级的折扣优惠,用一张优惠券覆盖整个匹配受众。这是一个更精细的工具:折扣直接挂在商品模块本身上,绑定你从 WooCommerce 商品目录导入的那件真实商品,为该邮件的每一位收件人自动铸造,并直接应用在该商品自己的页面上。

第 1 步——连接 WooCommerce

在你自己的 WordPress 网站上,前往WooCommerce → 设置 → 高级 → REST API,创建一个具有读取权限的密钥。回到 MailInApp 的设置 → 集成中,粘贴你的商店 URL 和该密钥即可完成连接。MailInApp 只会通过你商店自己的优惠券 REST 资源创建优惠券——除此之外它从不请求任何写入权限。

第 2 步——把商品导入商品模块

在工作室中,添加一个商品模块,打开它的从商店导入搜索。从你已同步的 WooCommerce 商品目录中挑选真实商品,而不是手动输入 URL。导入会同时做三件事:填入名称、描述、图片和价格;把结账切换为链接到外部商店结账;并根据商品自己的页面 URL 填入外部商品页面 URL。这三项对下一步都很关键——手动输入的 URL 背后没有真实的商店商品 ID,因此折扣开关在你导入之前会一直隐藏。

第 3 步——开启单品折扣

一旦模块上有一件真实的已导入商品,检查器中就会出现一个单品折扣开关。打开它并设置:

  • 折扣类型——百分比或固定金额。
  • 折扣数值——具体的数字。
  • 到期时间(发送后天数)——铸造出的优惠券可保持有效的时长。

这与该项目可能同时设置的任何项目级折扣优惠相互独立——一次发送可以同时带有两者、都不带,或只带其中一个。

第 4 步——发送,MailInApp 铸造一张限定于该商品的优惠券

在每位收件人的邮件即将渲染之前,MailInApp 会通过你商店的优惠券 REST API 创建一张优惠券:一次性使用(usage_limit: 1)、限定给该收件人自己的邮箱地址(email_restrictions),并通过 WooCommerce 的 product_ids 字段限定于这一件商品,而不是你整个购物车。模块自身的立即购买链接会自动被重写以带上它——不需要手动用合并标签套模板,因为一个模块 ID 本来就不是可以输入进标题里的东西。

第 5 步——购物者会准确落回这件商品,且优惠券已经应用

该链接会以查询参数的形式,把优惠券直接应用在这件商品自己的页面上——而不是项目级优惠自身链接所使用的通用 /cart/ URL。这是刻意设计的:邮件展示给他们的是一件具体商品,所以带折扣的链接也应该把他们带到同一件商品上,而不是让他们自己再去找一遍。与项目级优惠一样,自动应用并不能在每一种自定义结账主题上都得到保证——最坏情况下,购物者需要手动输入代码,但链接本身无论如何都不会失效。

归因方式与其他任何商店点击相同

该链接仍会带上与你项目其他外部链接相同的 utm_campaign。用该优惠券下的订单,会通过 WooCommerce 自带的订单归因元数据(自 WooCommerce 8.5 起默认开启)归因回这次发送,与其他任何 WooCommerce 点击带来的订单方式相同——归因具体是如何端到端运作的,参见跟踪 Shopify 订单、结账与收入(WooCommerce 连接后的工作方式完全相同)。

如果某位收件人的铸造失败

他们的邮件仍会照常发送。如果实时 API 调用出现故障,或某个令牌需要重新连接,该收件人的立即购买只会回退到模块普通的、未打折的商品链接——绝不会是一个损坏的链接,发送本身也绝不会被阻塞。

这和项目级的折扣优惠有什么不同

发送页面的折扣优惠面向整个匹配的受众——通常与购买历史分群搭配使用——用一个从下拉菜单中选择的优惠券范围(全店或单一商品)覆盖所有人。这项功能则完全跳过了那一切:它只限定于模块自身携带的那件商品,不需要任何受众筛选条件,并且会为收到该邮件的任何人自动铸造。两者也各自维护自己的冷却标记,因此对一件商品设置单品折扣,绝不会阻塞另一件商品的折扣,也不会阻塞同一联系人的项目级优惠。这个模式面向整个受众的版本,参见用购买历史分群与折扣码挽回老买家。

快速上手

先连接 WooCommerce,把一件真实商品导入商品模块,开启一个不太起眼的单品折扣,先发给一个较小的名单,确认兑换链接落在你预期的地方。完整参考见商品模块、WooCommerce 集成和商店原生折扣。

典型的构建与发送流程

  1. 1

    连接 WooCommerce

    在设置 → 集成中,粘贴你的商店 URL 和一个具备读取权限的 REST API 密钥。MailInApp 只会通过你商店自己的优惠券 REST 资源创建优惠券——除此之外它从不请求任何写入权限。

  2. 2

    把商品导入商品模块

    在工作室中,添加一个商品模块,使用它的从商店导入搜索,从你已同步的 WooCommerce 商品目录中挑选真实商品。导入会把结账设置为链接到外部商店结账,并自动填入外部商品页面 URL——下一步要出现,这两项都是必需的。

  3. 3

    开启单品折扣

    一旦模块上有一件真实的已导入商品,检查器中就会出现一个单品折扣开关。打开它,设置折扣百分比或固定金额,以及铸造出的优惠券可保持有效的天数——这与该项目可能同时设置的任何项目级折扣优惠相互独立。工作室画布会立即重新绘制,展示与收件人将看到的相同折扣徽章和划线原价,这样你无需打开实时预览就能查看。

  4. 4

    发送——MailInApp 铸造一张限定于该商品的优惠券

    在每位收件人的邮件即将渲染之前,MailInApp 会通过你商店的优惠券 REST API 创建一张一次性优惠券,限定给该收件人自己的邮箱地址,并通过 WooCommerce 的 product_ids 字段限定于这一件商品——不是你整个购物车。

  5. 5

    立即购买已经带上了优惠券

    模块的立即购买链接会被重写为直接在这件商品自己的页面上、以查询参数的形式应用优惠券码——而不是像项目级折扣优惠那样跳转到一个通用的 /cart/ URL,让购物者精确落在邮件展示给他们的位置。

  6. 6

    归因方式与其他任何商店点击相同

    该链接仍会带上与你项目其他外部链接相同的 utm_campaign,因此用该优惠券下的订单会通过商店自己的订单归因数据,像其他任何 WooCommerce 点击一样归因回这次发送。

常见问题

这和项目级的折扣优惠有什么不同?

发送页面上的折扣优惠面向整个匹配的受众——通常与购买历史分群搭配使用——用一个优惠券范围(全店或单一商品,从下拉菜单中选择)覆盖每个人。商品模块自身的单品折扣只限定于该模块导入的那一件商品,完全不需要任何受众筛选条件或发送页面上的设置;它会自动为收到那封邮件的任何人铸造优惠券。一个项目可以使用其中之一、两者都用,或都不用——它们各自独立运行,冷却期也各不相同。

这需要购买历史分群才能生效吗?

不需要。购买历史分群是与项目级折扣优惠搭配的,不是与这个功能搭配。商品模块的单品折扣会为收到该邮件的每一位收件人铸造优惠券,不管他们此前是否购买过这件商品——或任何商品。

优惠券会在页面加载的那一刻自动应用吗?

它会以查询参数的形式携带,旨在你的商品页面上自动应用——这与项目级优惠自身链接已经使用的尽力而为的惯例相同,在大多数主题上都可靠,但不保证适用于每一种自定义结账流程。链接本身无论如何都不会失效:最坏情况下,购物者只需在结账时手动输入代码。

购物者能在点击进入结账之前就看到折扣吗?

在工作室中,打开开关的那一刻画布就会自动显示同样的徽章和划线原价,你无需打开实时预览就能查看。在店铺本身上,目前还没有 WooCommerce 版本的、在结账前于实时商品页面显示徽章的功能——这项功能目前只对接入的 Shopify 商店开放,通过一个可选的主题应用模块实现。无论如何,优惠券在结账时都会正确应用;这只影响折扣是否在购物者到达结账之前就可见。

为什么我的商品模块上没有出现折扣开关?

只有当模块通过从商店导入携带一件真实的已导入商品时,它才会出现——铸造优惠券需要你商店自己的数字商品 ID,才能把优惠券限定到该商品,而手动输入的外部商品页面 URL 不带有这个 ID。它在 MailInApp 结账模式下也完全隐藏,因为该模式根本不会触碰你的 WooCommerce 商店。

我能在同一封邮件里对多件商品都这样做吗?

可以——每个商品模块都会独立铸造和追踪自己的优惠券与冷却期,按模块本身计,因此为一件商品设置折扣绝不会阻塞或影响另一件商品的折扣,也不会影响项目级的折扣优惠。

如果收件人转发邮件,优惠券还能用吗?

优惠券本身仍然是一次性使用,并通过 WooCommerce 的 email_restrictions 限定到原始收件人自己的邮箱地址,因此转发邮件不会把一个可用的折扣交到陌生人手中——只有原始收件人自己的结账邮箱才能真正兑换它。

在工作室中构建它

从免费套餐开始——每个套餐都包含全部互动模块和完整的降级引擎。