Skip to main content
使用属性(例如用户 Tags 和 External ID 等标识符)通过 Liquid 语法 个性化消息和投递载荷。 OneSignal 在发送时渲染 Liquid 占位符,使用已存储在用户、订阅、Journey、消息、模板、应用或组织上的数据。您可以使用这些数据来个性化消息、Journey WebhookEvent Streams

何时使用属性个性化

使用属性个性化可在发送时使用 OneSignal 中已有的数据渲染内容——最常见的是用户 Tags、External ID 和订阅字段(如电子邮件或电话号码)。 适用场景:
  • 数据已存储在 OneSignal 中
  • 您希望在消息发送时自动替换 Liquid 占位符
  • 您不需要在投递时获取或计算新数据
如果值必须在发送时获取或计算(例如实时价格或库存),请使用 Data Feeds 或我们的 API 与 custom_data如果值来自导致用户进入或推进 Journey 的事件,请使用 Custom Event 个性化

渠道支持

每个渠道支持特定的属性类型和字段。
在以下字段中支持用户和订阅属性
  • 主题、回复地址和预标题
  • 消息正文
  • HTML 属性(例如:<img src="{{ image_url }}" />
  • 按钮操作(URL、mailto 等)

属性个性化的工作原理

OneSignal 将 Liquid 占位符替换为被发送消息的用户和订阅对应的属性值。
Liquid
如果用户的 Tags 为 first_name: Jonlevel: 5,他们会看到:
Text

如果用户没有设置 Tags,则会显示默认值。

属性 Liquid 对象参考

使用本节查找 Liquid 中可用的确切对象和字段名称。

用户和订阅属性

使用 user 获取用户级数据。当您需要渠道特定的值(如电子邮件地址或电话号码)时,请使用 subscription
用户的 Tags。您可以通过以下几种方式引用 Tags:
  • 直接使用 key,或将 key 放在 tags 之后
  • 示例 Tags 设置:first_name: Jon, level: 5
Liquid
  • 使用 for 循环语法遍历 Tags。此示例输出以逗号分隔的 key:value 对。
Liquid
用户的 External ID
Liquid
用户的 OneSignal ID
Liquid
接收消息的电子邮件 Subscription 的电子邮件地址。
Liquid
接收消息的短信 Subscription 的电话号码。
Liquid
用户的语言代码。
Liquid
用户的 Subscriptions
  • 使用 for 循环语法遍历 Subscriptions。
  • 此示例输出每个订阅的 token 和 ID(以逗号分隔)。
JSON
用于使用 Token 取消订阅邮件 API 的 token。

Journey 属性

journey 对象允许您引用 Journey 名称或访问 Journey 的 Custom Event 个性化
Journey 的名称。
JSON

消息属性

message 对象提供对消息 ID、名称和模板 ID 的访问,这对 Event Streams 很有用,同时还可以访问 custom_data 以个性化从后端发送的消息。
由 OneSignal 设置的消息 ID。
由发送者设置的消息名称。
由 OneSignal 设置的模板 ID。

模板属性

template 对象提供对用于发送消息的 Template 的模板 ID 和名称的访问。这对 Event Streams 很有用。
由 OneSignal 设置的模板 ID。
由发送者设置的模板名称。

应用和组织属性

apporg 对象提供发送消息的应用和组织的详细信息。这对 Event Streams 很有用。
由 OneSignal 设置的应用 ID。
由应用所有者设置的应用名称。
由 OneSignal 设置的组织 ID。
由组织所有者设置的组织名称。

示例:使用 Tags 实现购物车遗弃提醒

本示例展示如何使用用户 Tags 个性化购物车遗弃消息。它基于购物车遗弃教程 示例 Tags 设置:
JSON

电子邮件模板

1

创建新的电子邮件模板

导航到 Messages > Templates > New Email Template 并打开拖放编辑器。
2

添加布局结构

创建五行:
  • 第 1、2、4 行:一列包含一个 Paragraph
  • 第 3 行:四列包含 HTML | Paragraph | Paragraph | Paragraph
  • 第 5 行:一列包含一个 Button

购物车遗弃电子邮件入门模板

3

向段落块添加 Liquid

在第 1 行中添加:
Liquid
在第 2 行中添加用户正在查看内容的描述:
Text
在第 4 行中添加另一个行动号召:
Text
4

显示最近添加的商品

在第 3 行中配置四列:第 1 列(HTML 块):
HTML
第 2–4 列(文本块):
  • 第 2 列:{{product_name}}
  • 第 3 列:{{product_quantity}}
  • 第 4 列:{{product_price}}
5

将购物车 URL 添加到按钮

在第 5 行的 Button 块中,将操作 URL 设置为:

未添加样式的购物车遗弃基础电子邮件模板完成版

6

测试和预览模板

使用 Test & preview 按钮向自己发送测试邮件。
  • 确保 Tags 已设置在您的电子邮件 Subscription 上。

带有 Tags 的预览邮件

7

设置模板样式

成功!现在您可以为模板应用自己的样式。请参阅使用拖放设计电子邮件

推送模板

推送通知的空间有限,因此显示一个商品并提及总数量。 消息字段: 使用条件语句显示商品和数量,并确保语法正确。
Liquid
图片字段:
Liquid
启动 URL 字段:

使用 Test & preview 预览推送模板个性化

成功!您现在可以创建更多模板并在购物车遗弃 Journey 中使用它们。

示例:使用数据标签个性化应用内消息

此示例显示了一个使用数据标签个性化的奖励应用内消息。该应用内消息将数据标签值替换到多种块类型中。 在配置的消息中:
  • 文本块 — 显示完成的等级和该等级的奖励
  • 图像块 — 显示该奖励对应的图像,并提供默认图像作为备用
  • 按钮 2 文本 — 显示奖励值,默认值为 100
  • 背景图像 — 从数据标签值设置

在文本、图像和按钮块中配置了数据标签替换的应用内消息编辑器

消息在会话开始时使用用户当前的数据标签值进行渲染:

向用户显示的应用内消息,其中包含从数据标签中替换的值

有关支持的块、属性和时机规则,请参阅上方渠道支持中的应用内消息选项卡。以下是需要再次强调的两点:
  • 数据标签必须在用户开始新的应用会话之前设置。 在会话中更新的数据标签不会在该会话中显示的应用内消息中渲染。
  • 数据标签替换在”发送测试消息”测试发送中不起作用。 从真实会话触发消息以验证替换是否正常。
  • 属性替换在应用内消息中不受支持。

相关页面

消息个性化

OneSignal 中所有个性化选项的概述,包括何时使用 Custom Events 与其他方法。

Tags

了解如何通过 SDK、API 或 CSV 导入为用户设置 Tags。

使用 Liquid 语法

完整的 Liquid 参考,包括过滤器、条件语句、循环和字符串操作。

Templates

创建和管理可在 Journeys 中使用的可复用消息模板。

购物车遗弃教程

使用 Tags 和属性构建购物车遗弃 Journey。
需要帮助?与我们的支持团队聊天或发送邮件至 support@onesignal.com请包含以下信息:
  • 您遇到的问题详情以及复现步骤(如有)
  • 您的 OneSignal 应用 ID
  • 外部 ID 或订阅 ID(如适用)
  • 您在 OneSignal 控制台中测试的消息 URL(如适用)
  • 任何相关的日志或错误信息
我们很乐意为您提供帮助!