您可以根据用户在您的网站或应用中交互的页面,在 OneSignal 中为用户添加标签,然后将这些标签用于细分和有针对性的消息传递。本页面涵盖两种不同的模式——选择最符合您目标的模式,或同时运行两种模式。Documentation Index
Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
Use this file to discover all available pages before exploring further.
选择您的模式
| 模式 | 代码运行时机 | 设置内容 | 平台 |
|---|---|---|---|
| 按页面主题标记 | 每次页面或屏幕访问时 | 每个主题的计数标签(gaming = 5) | Web、Android、iOS |
| 订阅时标记 | 一次,当用户选择加入推送时 | 归因标签(subscription_page = gaming) | 仅 Web |
前提条件
按页面主题标记(每次访问)
为用户标记他们最常参与的主题,以便提供更个性化的消息——提高相关性、点击率和满意度。 示例用例:- 在时尚网站上,用户只对男士鞋子感兴趣——而不是女士连衣裙。
- 在新闻应用中,用户一直访问财经和体育文章——但从不关注娱乐或政治。
1. 定义您的主题分类
首先确定要跟踪的内容类别或主题。这些可能是:- 广泛的垂直领域,如
sports、finance或entertainment - 产品类型,如
laptops、accessories或premium - 作者或品牌
- 从 3-8 个主题开始,保持管理简单。
- 总体保持在 20 个主题以下,避免臃肿。
2. 添加代码跟踪主题访问
下面的示例执行三件事:- 跟踪每个页面或屏幕的一个或多个主题。
- 每次查看主题时增加访问计数。
- 每次查看时用更新的计数标记用户。
3. 细分并发送个性化消息
一旦应用标签后,您可以使用以下方式定位用户: 示例用例:- 仅当用户访问相关页面 5 次或以上时,才就特定主题向用户发送消息。
- 向阅读特定作者超过 3 篇文章的用户推广文章。
- 向不断返回特定产品类别的购物者提供折扣。
最佳实践
建议:- 在启动活动之前,使用
console.log()(Web)或您平台的日志记录器测试标签逻辑。 - 在所有页面上使用一致的主题命名约定。
- 将主题列表保存在中央位置(配置文件或远程配置),以便无需修改每个页面即可调整。
- 使用长或过于具体的标签键(完整的文章标题、长 URL)。
- 超过 OneSignal 的标签限制。
- 使用个人身份信息(PII)进行标记。
订阅时标记(一次性,仅限 Web)
使用上下文数据(例如订阅者订阅时所在的页面主题或 URL 路径)为网页推送订阅者添加标签,以提供有针对性的后续活动。此模式检测选择加入、应用标签并为滴灌式消息提供细分。1. 在选择加入时标记用户
当用户订阅推送通知时,使用PushSubscription change 监听器检测选择加入,并应用包含有关其正在查看的页面的上下文数据的标签。
- 当用户的推送订阅状态发生变化时(选择加入、选择退出、令牌刷新),
change事件触发。 - 当用户有活跃订阅时,
event.current.optedIn为true。检查!event.previous.optedIn确保标签仅在初始选择加入时应用,而不是每次状态变化时。 window.location.pathname.split('/')[1]将路径的第一个段捕获为订阅上下文。例如,如果 URL 是https://example.com/gaming/article-123,则subscription_page标签设置为gaming。pageTopic从<meta>标签提取,回退到'general'。根据您网站的元数据结构进行调整。
2. 按标签细分用户
一旦应用标签,使用细分或 API 筛选器根据这些标签定位用户。例如:- 向
subscription_page为gaming的用户发送活动。 - 基于标签值和时机创建动态细分(例如,距首次会话的小时数)。
3. 自动化后续消息
构建滴灌式活动,根据用户订阅的时间和订阅的内容触发消息。 示例:游戏订阅者滴灌活动| 细分名称 | 筛选器 | 描述 |
|---|---|---|
| Gaming 1 | subscription_page = gaming AND First Session > 2h AND < 24h | 订阅后 2–24 小时内联系。 |
| Gaming 2 | subscription_page = gaming AND First Session > 24h AND < 48h | 1 天后跟进。 |
| Gaming 3 | subscription_page = gaming AND First Session > 72h AND < 96h | 3 天后最终检查。 |
使用上限时间限制(
<)以防止用户在消息窗口过去后仍停留在细分中。4. 将细分与消息模板结合
一旦创建了细分: 示例消息想法:- 邀请加入游戏社区或社交群组。
- 推荐与其主题相关的热门文章。
- 发送独家优惠或折扣码。
最佳实践
- 使用反映实际用户意图的有意义的标签名称和值。
- 尽可能从页面元数据动态提取标签值。
- 仅在初始选择加入时标记——上面的监听器示例检查
!event.previous.optedIn以避免在每次状态变化时重新标记。
常见问题
我应该使用哪种模式?
使用按页面主题标记来构建随时间变化的行为兴趣画像。计数器随每次访问而增长,因此可以根据参与深度(gaming >= 5)调整细分。使用订阅时标记在选择加入时捕获单一时间点的归因,适用于来源感知的欢迎消息,您希望在用户拥有长访问历史之前就响应他们订阅的位置。两种模式可以在同一网站上并行运行——它们设置不同的标签并回答不同的问题。
如果用户清除浏览器数据,标签会持久化吗?
不会。在 Web 上清除浏览器数据会创建新的订阅,存储在localStorage 中的每个主题计数器也会一起重置。如果用户重新订阅(手动或通过自动重新订阅),change 监听器会再次触发并根据当前页面重新应用订阅标签,但访问计数器会从头开始。
我可以在初始订阅后更新标签吗?
可以。您可以随时调用OneSignal.User.addTag() 或 OneSignal.User.addTags() 来添加或更新标签。订阅监听器对初始上下文很有用,但您也可以根据持续行为标记用户。
我应该使用这些模式而不是消息事件筛选器吗?
它们用于不同的目的。当您希望按用户访问或订阅的页面细分时,使用本页面上的模式——即源自您的网站或应用的信号。当您希望按用户与哪些 OneSignal 消息交互(已送达、已点击等)细分时,使用消息事件筛选器。它们是互补的,而不是冗余的。订阅来源模式在移动设备上有效吗?
不直接有效。PushSubscription.addEventListener("change", ...) API 是 Web 特定的。在 iOS 和 Android 上,您可以通过在选择加入流程内调用 addTag 来实现类似的归因——例如,在用户接受权限提示后立即用他们所在的屏幕或功能标记他们。
相关页面
标签
向用户添加自定义属性以进行个性化和细分。
细分
按属性、标签和行为对用户进行分组,以进行有针对性的消息传递。
Web SDK 参考
OneSignal Web SDK 的完整参考,包括订阅监听器和标签方法。
移动 SDK 参考
OneSignal 移动 SDK 的完整参考,包括标签方法。
旅程
构建由细分进入或自定义事件触发的多步骤消息工作流。