触发条件
产品触发条件
- Specific product(s) - 按 ID 匹配特定的 Shopify 产品
- Collection - 匹配属于特定系列的产品
- Tag(s) - 匹配带有特定标签的产品(例如 “sale”、“summer”)
- Title - 匹配产品标题
- Vendor - 匹配供应商/品牌名称
- Type - 匹配产品类型字段(例如 “Apparel”、“Electronics”)
- Handle - 匹配产品 URL 别名
- Metafield - 匹配自定义元字段的 namespace/key/value 组合
- Selling plan - 匹配 “subscription” 或 “one-time” 产品。仅当请求上下文为该产品提供了销售计划时才会评估——Aftersell 的 checkout 和购后 upsell 触点不会发送此信息,因此除非自定义集成明确提供,否则该触发条件在这些触点上不会匹配
客户触发条件
- Customer tag - 例如 “VIP”、“loyalty-gold”
- Country code - 账单国家
- Province code - 账单省份/州
- Locale - 客户区域设置(例如 “en-US”)
- Accepts marketing - 营销订阅状态
- Order count - 以往订单数量
- Total spent - 累计消费金额
购物车触发条件
- Cart subtotal - 例如小计大于 $50
- Item count - 购物车中商品的总数量
- Line count - 不同行项目的数量
- Cart attribute - 通过 Shopify 购物车 API 设置的自定义购物车属性
- Cart note - 购物车备注字段
位置触发条件
- Shipping country - 配送目的地国家
- Shipping province - 配送目的地省份/州
- Shipping method - 所选配送方式
- Store currency - 当前生效的商店货币代码
营销触发条件
- URL - 匹配着陆 URL 中的子字符串,因此你可以通过匹配 URL 中嵌入的参数(例如
utm_source=newsletter)来定向特定的营销活动或渠道
时间触发条件
- Day of week - 当天是星期几
- Hour of day - 当前小时
动态触发条件
- Always match - 一个没有条件、始终触发的触发条件。用它让规则在每个请求上都运行(这与策略级的 Catch all 不同,后者只在没有其他规则匹配时才触发)。
并非每个触发条件在每个触点上都有数据。例如,Checkout 只发送产品和购物车上下文——客户、位置和营销触发条件在那里不会匹配。关于每个触点发送哪些数据,请参阅实施策略指南。
运算符
并非每个运算符都适用于每个触发条件:
- 列表运算符(Contains any / all 及其否定形式)适用于多值字段,例如标签、系列、客户标签和特定产品。
- 文本运算符(Equals、Contains 及其否定形式)适用于单值文本字段,例如标题、供应商、handle、区域设置、国家和 URL。
- 数值运算符适用于购物车小计、商品数量、行数、订单数量、累计消费和小时等字段。数值运算符没有 “does not” 变体。
- 少数字段仅支持 Equals 和 Does not equal——销售计划、星期几和营销订阅状态。
动作
产品动作
- Specific products - 从你的 Shopify 产品目录中手动挑选单个产品。
- Collection - 返回属于特定系列的所有产品。
- Product attributes - 返回符合标签、供应商、产品类型或元字段等条件的产品——与触发条件中使用的属性类型相同。
动态动作
- Most popular - 按销量计算的商店最佳表现产品,可以是全店范围,也可以限定在某个系列内。
- Recently purchased - 全店近期被购买的产品。
- Inherit from when - 复用规则自身的触发条件(“when”)作为产品选择器,使返回的产品与规则触发时所依据的条件一致。
- AI Recommendations - 由 Aftersell 推荐模型生成的个性化建议。
筛选动作
- Sort - 控制选择哪些产品:
- Random - 随机选择。
- Price: high → low - 最贵的产品最先返回。
- Price: low → high - 最便宜的产品最先返回。
- Amount/Limit - 设置返回产品的最大数量。
- Type - 将组装好的产品池缩小到单一 Shopify 产品类型。选择 Equals 进行精确匹配,或选择 Contains 进行子字符串匹配(两者都不区分大小写)。只保留产品类型与你输入的值匹配的产品;其余产品会在应用 Amount/Limit 之前被移除。
Type 筛选器会精简由你的产品动作组装出的产品池——它不同于 Product type 产品动作,后者会返回给定类型的产品。当你想限制更宽泛的动作(例如系列或动态动作)可以返回的内容时,请使用该筛选器。
先应用 Sort,再应用 Amount/Limit。例如,如果你的排序设置为 Random,完整的产品池会在应用限制之前被随机打乱——因此你总是得到一个随机子集,而不是以随机顺序排列的相同产品。
键值动作
meta.data 中返回。常见用途包括:
- 促销横幅文本
- 用于分析的营销活动标签
如果多条规则匹配并输出相同的键,则以第一条匹配规则的值为准——后面的规则无法覆盖它。
规则优先级与评估顺序
- 根据提供的上下文评估每条规则的触发条件。
- 收集所有匹配规则中的产品。
- 去重并将结果限制在配置的最大数量以内(默认:20 个产品)。
全局筛选器
- Exclude out of stock - 自动排除当前无法购买的任何产品。
- Exclude input products - 排除触发规则的产品(例如购物者当前在 PDP 上查看的产品),这样你就永远不会推荐购物者正在查看的同一产品。
- Exclude by product tag - 排除带有特定标签的产品。
- Exclude by metafield - 排除与特定元字段 namespace/key/value 匹配的产品。
- Exclude by product ID - 按 ID 排除特定产品。
- Require stock at location - 仅保留在所选位置有可用库存的产品(需要库存和位置读取权限)。
Catch all
- 启用/禁用 - 为该策略开启或关闭 Catch all 规则。禁用时,未匹配任何规则的请求将返回空结果。
- 配置动作 - 使用可用动作类型的任意组合来定义返回内容,与其他规则相同。
resolution.fallbackUsed: true。