页面模块 · 指南
订阅获取模块:内联表单、弹窗与同意
订阅获取模块如何在页脚、文章末尾、结账相关位置、弹窗与退出意图等获取点收集邮件或短信订阅,定义同意文案、触发时机与频次上限、表单错误成功与重复提交状态,并与社交关注入口分工。
订阅获取模块在合适的位置邀请顾客授权品牌通过邮件或短信联系,并让授权可以被解释、被证明、被撤回。它不是“到处放一个邮箱框”,而是把订阅价值、同意文案、获取点、触发规则和提交后的状态连成一条路径。
订阅获取 = 订阅邀请内容 × 内联表单或弹窗 × 触发规则 × 页面语境
先确定模块在完成什么任务
- 顾客问题:订阅能得到什么;多久收到一次;怎样退出;我的邮箱或手机号会被怎样使用。
- 对象层级:订阅的是品牌的营销邮件或短信,不是订单通知,也不是社交账号关注。
- 进入前已知:顾客所处页面已经产生了某种兴趣(读完文章、看完商品、完成购买),获取点应承接这个兴趣,而不是打断它。
信息来源与输入
| 输入 | 来源 | 最低要求 |
|---|---|---|
| 订阅价值、发送主体、频率 | 邮件订阅邀请 | 写具体内容类型;无法承诺频率时写“不定期”并说明范围 |
| 同意文案与隐私链接 | 同一内容类型,由隐私或法务确认 | 说明授权范围、发送主体与退出方式;不与订单通知混写 |
| 激励与兑现条件 | 促销 | 有折扣时写明有效期与限制;并说明之后会持续收到营销联系 |
| 是否已订阅 | 平台状态(客户与营销同意记录) | 运行时读取,已订阅者不再索取 |
| 提交结果 | 交易动作(表单提交) | 成功、失败、待确认由后端结果决定,不由前端假定 |
| 触发规则 | 编辑策略 | 写明触发时机、关闭后的记忆时长与频次上限 |
已订阅状态、提交结果和折扣兑现是运行时数据,不得写成静态“订阅成功”。
获取点与选择
| 获取点 | 语境 | 判据 |
|---|---|---|
| 页脚内联 | 全站,低干扰 | 默认保留;价值说明一句话 |
| 文章末尾内联 | 顾客读完资源或博客内容 | 邀请必须与该文章主题相关 |
| 结账相关位置 | 顾客在下单流程或订单确认页 | 只在平台机制与同意规则已核对时使用;不得让它阻碍下单 |
| 弹窗 | 顾客已浏览一段内容之后 | 见下文触发规则;小屏与键盘用户必须可关闭 |
| 退出意图 | 顾客即将离开 | 依赖能否检测“即将离开”;触屏设备上是否可检测未核验,必须有不依赖它的入口 |
与社交关注分工:邮件或短信订阅授权品牌主动联系顾客,需要同意文案与退订;关注入口只是去外部账号“看”,退出与触达方式由所在平台决定。二者出现在同一区域时,文案不混用“订阅”与“关注”,也不把关注说成订阅。
触发时机与频次上限
- 不在页面刚打开时立即遮挡主要内容。Google Search Central 的 Interstitials and dialogs 页(页面标注更新于 2025-12-10)把遮挡整页的插页列为应避免的做法,并说明小型横幅这类占用空间较少的形式更可接受;该页面经工具摘要读取,且它讨论的是搜索体验,不是订阅转化建议。
- 触发条件用行为而非计时器为主:读完文章、滚动到一定位置、第二次访问。具体延迟秒数和滚动比例没有已核验的依据,本文不给数字,需要用实测取舍。
- 频次上限至少包含:关闭后在一段时间内不再出现;已订阅不再出现;同一次访问不出现第二个弹窗;同页已有内联表单时不再叠加弹窗。
- 关闭动作必须永远可用,且不因页面加载慢而不可点。
- 记忆用哪一种存储(Cookie 或浏览器存储)属于隐私披露范围,需要与隐私政策一致,并由合规确认。
同意文案与预勾选
以下是读到的官方要点,不是法律意见,各市场要求需要合规确认:
- 英国 ICO 的有效同意指南(这是 UK GDPR 的监管机构页面,不是欧盟法规原文;欧盟 GDPR 原文本次未读到)列出:同意不应作为服务的捆绑条件、不应依赖预勾选或沉默、应分目的提供选择、应指明收集方、应有记录、应能随时且轻松地撤回。
- 美国 FTC 的 CAN-SPAM 合规指南列出的商业邮件要求包括:头部信息准确、主题行不得欺骗、明确标识为广告、包含有效的邮政地址、说明怎样退订并在 10 个工作日内处理退订请求。摘要读到的页面讲的是退订义务,没有读到对事先同意(opt-in)的要求,不能据此推断其他法域也如此。
- Shopify 帮助页写明,结账页的营销复选框可以预选,顾客仍可取消勾选;同意设置有按地区自动或手动两种方式,选择不含任何地区时复选框永不预选;页面同时写明自动设置不能替代法律意见,商家需要自己确保其准确并符合适用法律。
编辑规则:默认不预勾选;同意文案与提交按钮相邻、说明发送主体与内容类型;折扣不作为隐藏营销联系的理由;短信需要单独的同意与说明,不与邮件合并为一个勾选。
状态与退化
| 状态 | 处理 |
|---|---|
| 零项(说不清价值) | 不放邀请,或只保留页脚低干扰入口 |
| 一项 | 一个获取点足够,不到处重复弹出 |
| 多项 | 各获取点共用同一份价值与同意文案,共用同一份“已订阅”状态 |
| 字段无效 | 保留已填内容;错误以文字标明是哪个字段、怎样修正(WCAG 2.2 SC 3.3.1 Error Identification) |
| 提交中 | 禁用重复提交并显示进行中;防止同一邮箱被连续提交多次 |
| 成功 | 说明会收到什么、何时收到;有折扣时说明如何兑现;以状态消息告知,不抢焦点(SC 4.1.3 Status Messages) |
| 已订阅或重复提交 | 反馈“已订阅”与会收到什么,不再显示新的成功状态,不重复发放折扣 |
| 待确认(启用双重确认) | 提示查收确认邮件,说明未确认前不视为订阅 |
| 服务不可用或网络失败 | 保留输入并提供重试;不显示成功 |
| 激励过期 | 撤下激励文案,保留订阅价值说明 |
| 跨市场 | 不同市场的同意要求与默认值可能不同;文案与勾选默认值按市场核对,不用一份文案覆盖所有市场 |
| 无 JavaScript | 内联表单应能以普通表单提交;弹窗退化为页内内联区块 |
可选展现与交互
- Inline Form:页脚与文章末尾的默认形式;每个输入有可见标签(SC 3.3.2 Labels or Instructions),错误紧邻字段。
- Modal:弹窗按模态处理,焦点管理、Escape 和背景不可交互按该页要求。订阅弹窗不属于必须先处理的关键任务,因此使用条件比一般模态更严:不在首屏立即弹出,不与 Cookie 或年龄确认叠加。
- Toast:仅用于“已订阅”这类瞬时反馈,且成功信息不能只存在于消失的浮层中。
页面组合中的位置
- 常见位置:首页与文章页末尾(对应页面组合中的行动收尾)、页脚、订单确认相关位置。
- 前后模块:前接内容或证据模块,后接页脚导航;商品页购买区附近不放订阅弹窗。
- 不应出现的语境:结账必经步骤、购物车抽屉打开时、错误页、顾客刚关闭过订阅弹窗之后。
无障碍与性能
弹窗键盘可达、可关闭、关闭后焦点返回;固定横幅不遮住获得焦点的控件(WCAG 2.2 SC 2.4.11 Focus Not Obscured (Minimum))。触发脚本延迟加载,不阻塞首屏;弹窗出现不引起布局位移。
映射到 Shopify
核验于 2026-09-29,来源为 Shopify 帮助中心与 shopify.dev,与邮件订阅邀请「平台落点」一致:
- 顾客可通过在线商店的 newsletter 表单、结账页的营销复选框,或登录账户时选择加入订阅。
- 主题 Newsletter:Online Store 2.0 主题与 Horizon 系列主题提供 newsletter 区块,默认含标题、段落与邮箱表单三个块;该页面没有写同意文案、订阅者数据去向,需要按主题与隐私设置另行核对。
- Liquid 的
customer表单类型用于“不注册账号地创建客户”,官方文档提到可用于收集邮件名单;本次读到的文档没有说明提交后营销同意的记录方式,也没有列出表单错误与成功状态的属性,未核验。 - Shopify Forms 应用页写明可为表单添加折扣以鼓励订阅邮件、短信或 WhatsApp,并默认显示“Claim with Shop”按钮(可在设置中移除);弹窗触发条件与频次设置在所读页面中没有,未核验。帮助页另称该应用可创建内联或弹窗表单。
- 双重确认、营销同意自动与手动设置和法律免责见上文;各同意状态在后台的名称未逐项核验。
- 固定版本主题的订阅表单实现见Dawn 订阅表单与徽章、Horizon 徽章、评价与订阅:两者在全仓库搜索中均未找到同意文案与订阅弹窗触发逻辑。页面级组成见首页配方。
验证一次订阅获取
- 用未订阅的新访客依次触发每个获取点:价值、频率与同意文案一致,默认未预勾选(按目标市场核对例外)。
- 提交无效邮箱、断网、连续快速点击:分别得到明确错误、可重试状态和单次提交。
- 用已订阅邮箱再次提交:显示“已订阅”,没有第二份折扣。
- 关闭弹窗后刷新与换页:在规定的时间内不再出现;同页已有内联表单时不出现弹窗。
- 更换地区与语言:文案与默认值随市场变化;短信另有独立同意。
- 仅用键盘与读屏完成订阅与关闭;关闭无 JavaScript 后表单仍可提交。
- 检查收件与退订:确认邮件、欢迎邮件与退订链接都能工作。
待继续完善
- 缺少触发时机与频次的实测数据,本文不给具体秒数或比例;
- 欧盟 GDPR、各国短信营销法规的原文未读,需要法务或合规确认;
- Liquid 表单错误与成功状态、Forms 应用的触发设置未核验;
- 缺少虚构示例的表单与同意文案样稿。