概述
本指南介绍如何设置和配置 OneSignal WordPress Web Push 插件 v3+。版本 3+ 的新功能
此版本通过简化设置和配置过程进行了重大升级。使用版本 3+,您可以在一个地方处理所有提示设置——OneSignal 仪表板。- 🚀 SDK 升级: 将 OneSignal Web SDK 从版本 15 升级到版本 16
- 💬 仪表板提示: 直接在 OneSignal 仪表板中配置所有权限提示——无需自定义代码
- ⏩ 一键发布: 勾选”发布文章时发送通知”即可自动发送推送通知
- 🧑🤝🧑 受众定位: 为每篇文章选择接收通知的分段
- 📲 移动应用集成: 通过可选的深度链接向移动应用订阅者发送通知
设置
在开始之前,请确保您具备:- OneSignal 账户(免费创建)
- WordPress 管理员访问权限以安装和配置插件
- 启用了 HTTPS 的网站(网页推送通知所必需)
1. 在 OneSignal 仪表板中配置 WordPress
导航到 设置 > 推送和应用内 > Web > WordPress 插件或网站构建器
从 OneSignal 仪表板的网站构建器选项中选择 WordPress
网站设置
- 网站名称: 您的网站名称和默认通知标题。
- 网站 URL: 必须与您的 WordPress 网站的确切 URL 匹配(遵循同源策略)
- 自动重新订阅: 启用此选项可在清除浏览器数据的用户返回您的网站时自动重新订阅他们(无需新的权限提示)
- 默认图标 URL: 用于通知和提示的正方形
256×256PNG、JPG 或非动画 GIF。请参阅通知图标。

输入您的确切网站 URL。https://your-site.com 与 https://www.your-site.com 不同——始终仅使用一种格式
权限提示
为推送、电子邮件和/或短信设置您的权限提示。推送滑动提示默认启用,但您可以自定义或添加其他提示。- 基本提示设置
- 高级:基于类别的分段
点击推送滑动提示进行自定义

访问并自定义您的推送滑动提示设置
配置时间和文本:
- 将 自动提示 设置为
1次页面浏览和1秒用于初始测试- 自定义提示文本和外观
- 根据启动后的用户行为调整时间

配置自动提示时间并自定义提示外观
配置完提示后点击完成。
欢迎通知
设置用户首次订阅后立即发送的通知。这可以:- 感谢用户订阅
- 演示通知的显示方式
- 提高参与度并减少取消订阅
2. 配置 WordPress 插件
保存仪表板配置后,您将看到您的 App ID 和 API Key(即 Keys & IDs 中记录的同一个 REST API 密钥)。将这些值复制到您的 WordPress 插件:
从 OneSignal 仪表板复制您的 App ID 和 API Key
在您的 WordPress 管理后台,导航到 OneSignal 插件设置
准确粘贴仪表板中显示的 App ID 和 REST API Key

确保您的 WordPress 插件 App ID 和 REST API Key 与 OneSignal 仪表板完全匹配
高级设置
根据您的需求配置其他插件选项:
用于增强功能和分析跟踪的高级设置
- 自定义文章类型: 添加来自插件的文章类型以启用通知选项
- 文章发布时自动发送通知: 发布文章时自动勾选通知框,这样无需手动勾选即可发送通知
- 文章更新时自动发送通知: 更新文章时自动勾选通知框,这样无需手动勾选即可发送通知
- 页面发布时自动发送通知: 发布页面时自动勾选通知框,这样无需手动勾选即可发送通知
- 页面更新时自动发送通知: 更新页面时自动勾选通知框,这样无需手动勾选即可发送通知
- 从第三方插件发布文章时自动发送推送通知: 从外部发布插件自动发送通知
- 移动应用集成: 使用相同的 OneSignal App ID 向您的移动应用订阅者发送通知
Service worker
插件会为您托管并注册 service worker。您无需将OneSignalSDKWorker.js 上传到网站根目录,也无需在仪表板或 OneSignal.init() 中设置自定义路径。
版本 3+ 从插件的 sdk_files 目录提供一个纯 JavaScript 文件。它会导入 CDN worker:
onesignal-free-web-push-notifications):
https://your-site.com/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/OneSignalSDKWorker.js
如果您是通过 zip 安装的,插件文件夹可能不同(例如 OneSignal-WordPress-Plugin)。请在 wp-admin 中查看 插件,或在 wp-content/plugins/ 下查找,然后在路径中使用该文件夹名称。
在安装了插件的情况下,请勿按照 OneSignal service worker 的根目录上传或自定义路径步骤操作。这些说明仅适用于典型站点和自定义代码。
如果您需要自定义 worker 位置或对 init 的完全控制,则需要切换到自定义代码设置:请先卸载插件。这不是 WordPress 集成内的设置项。
3. 完成迁移(仅限升级用户)
保存 OneSignal 仪表板配置后,返回 WordPress
在插件设置中点击迁移已完成
点击保存设置以完成升级

点击迁移已完成以完成您的插件升级
测试您的设置
- 初始测试
- 验证订阅
- 发送测试消息
- 访问您的网站,在普通(非无痕)窗口中进行最可靠的测试。隐私浏览模式可能会显示提示,但订阅通常无法持久保存——请参阅 WordPress 故障排除。
-
查找您配置的滑动提示。

您配置的滑动提示应根据您的时间设置显示
- 点击订阅按钮(在此示例中标记为 Subscribe)。
-
接受浏览器权限(出现提示时)。

网页推送通知需要浏览器权限提示(外观因浏览器而异)
-
检查欢迎通知(如果已配置)。

成功订阅后立即显示欢迎通知
发布通知
当您安排文章发布时,OneSignal 也会安排在计划时间向您的订阅者发送推送通知。如果您重新安排文章,推送通知将被取消,并为新时间安排新的推送。 您可以在 OneSignal 仪表板的 投递 > 计划消息 下查看您的计划和已取消的通知。有关更多详细信息,请参阅推送消息报告。基本文章通知
创建或编辑 WordPress 文章时,找到 OneSignal 推送通知 元框(通常在文章编辑器的底部或侧边栏)。
OneSignal 推送通知元框——如需要可拖动重新定位
- 勾选 “文章发布或更新时发送通知”
- 取消勾选可跳过为该文章发送通知
受众定位
发送给所有订阅者(默认)
默认情况下,通知会发送给所有推送订阅者。发送给特定分段
使用您在 OneSignal 仪表板 > 受众 > 分段 中创建的分段来定位特定受众。 如果您在仪表板中设置了基于类别的提示(请参阅设置下的 高级:基于类别的分段),请创建相应的分段:- 在您的 OneSignal 仪表板中转到 受众 > 分段
- 使用您的标签键创建分段,例如:
- 新闻分段: 标签
news为1 - 优惠分段: 标签
deals为1
- 新闻分段: 标签

标签区分大小写!'news' 和 'News' 是不同的标签
- 创建分段后,刷新您的 WordPress 文章编辑器
- 从下拉菜单中选择您的目标分段

选择特定分段以定位相关用户组
自定义通知内容
默认行为
- 标题: 使用您的 WordPress 网站标题(设置 > 常规)
- 消息: 使用文章标题
- 图片: 使用文章的特色图片(如果已设置)
- URL: 链接到已发布的文章
自定义内容
勾选 “自定义通知内容” 以覆盖默认设置:
自定义通知标题、内容和其他元素

自定义推送通知向用户显示的效果
将自定义文章类型添加到 OneSignal WordPress 插件
查找您的自定义文章类型名称
创建新文章时查看浏览器的地址栏。URL 看起来像:post_type 参数的值(例如 your_custom_type)就是您需要在 OneSignal 插件设置中添加的确切名称。
添加到 OneSignal 设置
- 在 WordPress 管理后台转到 OneSignal > 设置
- 在 高级设置 中,将您的自定义文章类型名称添加到 自定义文章类型 字段
- 保存设置
product (WooCommerce)、tribe_events (The Events Calendar)、portfolio。移动应用集成
如果您有一个使用相同 OneSignal App ID 的移动应用:- 在插件设置中启用 “向移动应用订阅者发送通知”
- 在文章元框中,添加用于深度链接的 移动 URL
- 移动用户将被引导到您的应用而不是网页浏览器
常见问题
我需要上传 service worker 文件吗?
我需要上传 service worker 文件吗?
sdk_files 目录中托管 OneSignalSDKWorker.js 并为您配置路径。请勿将该文件上传到网站根目录,也不要在代码中设置 serviceWorkerPath。请参阅 Service worker。如何在特定页面上禁用提示?
如何在特定页面上禁用提示?
- 在您的 OneSignal 仪表板中,转到 设置 > 推送和应用内 > Web 设置
- 从 权限提示设置 表中选择您的提示
- 取消勾选 自动提示 并点击 完成

禁用自动提示以手动控制提示何时出现
- 向下滚动,点击 保存,然后点击 完成
- 在您希望提示出现的特定页面上添加自定义 JavaScript 代码
我可以向移动应用订阅者发送通知吗?
我可以向移动应用订阅者发送通知吗?
- 在 WordPress 插件设置中启用 “向移动应用订阅者发送通知”
- 发布文章时,使用 OneSignal 元框中的 移动 URL 字段指定深度链接
- 如果没有自定义移动 URL,用户将被引导到您的网站
如何从 WordPress 发送电子邮件或短信?
如何从 WordPress 发送电子邮件或短信?
为什么迁移后我的提示不起作用?
为什么迁移后我的提示不起作用?

禁用浏览器缓存以强制在迁移后加载更新的文件
`A bad HTTP response code (404)` 错误是什么意思?
`A bad HTTP response code (404)` 错误是什么意思?

浏览器控制台中的 404 错误表示迁移过程不完整
- 确保您已保存 OneSignal 仪表板配置
- 在 WordPress 中,在插件设置中点击 “迁移已完成”
- 点击 保存设置 以完成升级
我可以在发送前修改通知参数吗?
我可以在发送前修改通知参数吗?
onesignal_send_notification 过滤器。wp-content/mu-plugins/onesignal-custom.php 中。这确保其正确加载并防止被更新覆盖。
