概述
动态内容让您可以大规模个性化消息——无需为每个受众创建单独的版本。无论您是发送多语言消息还是根据地区或营销活动定制内容,动态内容都允许您定义一个消息,该消息会根据每个用户自动调整。 您可以通过上传 CSV 文件或使用我们的模板 API 以编程方式提供包含内容变化的数据,并在消息中使用 Liquid 语法引用这些值。发送消息时,OneSignal 会根据用户的数据标签为每个用户提取适当的内容。 动态内容适用于推送、邮件和短信,非常适合:- 多语言引导或营销流程
- 地区或细分特定的促销活动
- 由外部营销活动数据驱动的个性化
- 大规模个性化 – 提供定制体验,无需创建和管理数十个消息变体。
- 多语言支持 – 编写一条消息,它会自动以每个用户的首选语言显示。
- 动态分段 – 根据用户属性(如语言、地区、计划或 campaign_id 等自定义标签)更改消息内容。
- 无摩擦协作 – 让翻译人员或非技术团队直接在 CSV 文件中创建和编辑消息内容——无需 OneSignal 登录。
- 跨渠道兼容性 – 在推送、邮件和短信营销活动中使用相同的 CSV 逻辑。
- 按国家或城市发布活动通知
- 基于营销活动 ID 或购买历史的个性化推送通知
- 在用户群体中测试多个主题行或消息
请参阅消息个性化了解更多个性化消息的选项。
动态内容设置
创建新消息或模板。 从仪表板:选择动态内容。- 上传将消息内容映射到数据标签的 CSV 文件。
dynamic_content
属性。
- 如果您的动态内容经常更改,这是很好的解决方案。

在推送创建编辑器中找到的动态内容按钮。
格式化您的内容
您可以从空白文件开始或选择提供的模板之一:- 多语言
- 内容个性化

OneSignal 提供的 CSV 模板选项。
CSV 要求
- 文件大小必须小于
200 KB
- 列标题:
- 仅限字母数字
- 使用下划线(
_
)代替空格 - 避免特殊字符
- 确保在电子表格编辑器中使用 UTF-8 编码
- 多语言示例
- 内容个性化示例
将 
subscription.language
属性映射到每个部分的不同翻译。
类似于 Excel 中的 VLOOKUP 公式,我们将用户属性与 CSV 中的相应内容进行匹配。
在消息中引用动态内容
要显示来自dynamic_content
的个性化内容,请使用此 Liquid 语法。
file_name
:CSV 文件名(不包含.csv
)。section_name
:行的第一列中的值data_tag_or_property
:与数据标签或订阅属性匹配的列标题
后备内容
添加后备内容将防止用户接收空白内容。它确保您的消息在以下情况下呈现:- 用户没有匹配的标签或属性。
- 用户有标签或属性但在
dynamic_content
中不可用。
用户没有匹配的标签或属性
Ifsubscription.language
doesn’t exist, reference the default column from dynamic_content
instead.
用户有标签或属性但在 dynamic_content
中不可用
If subscription.language
exists on a subscription, but not in dynamic_content
reference the default column instead.
示例
多语言邮件
使用translations.csv
本地化您的邮件:
{{dynamic_content.translations.section_1[subscription.language]}}
{{dynamic_content.translations.section_2[subscription.language]}}

示例显示如何为多语言示例添加 liquid 语法。
个性化推送消息
使用content_personalization_template.csv
为用户特定的推送消息:
{{dynamic_content.content_personalization_template[campaign_id].title}}
{{dynamic_content.content_personalization_template[campaign_id].message}}
{{dynamic_content.content_personalization_template[campaign_id].url}}

示例显示如何为内容个性化示例添加 liquid 语法。
测试和预览
1
创建测试 CSV
多语言测试:

- 列:
email
、language
- 列:
external_id
、campaign_id

示例 CSV 上传并创建邮件测试者的细分。
在邮件中使用
+
地址来测试多个变体:username+test@example.com

使用 external_id 和标签 campaign_id 上传并创建测试者细分的示例 CSV。
2
上传您的测试细分
3
查看消息
发送测试消息后,检查您的收件箱或设备以验证显示。

如果
dynamic_content
未呈现,请参考后备内容
示例显示使用动态内容发送的邮件。

示例显示使用动态内容发送的推送。
您现在可以使用这些模板和 CSV 扩展个性化消息。
使用注意事项
何时使用动态内容 vs. 自定义数据
- 对于多样化语言或个性化消息块,使用动态内容。
- 对于单语言的简单内联个性化,使用**自定义数据**。
编辑模板
重新上传 CSV 或使用更新模板 API 的dynamic_content
属性进行更新。