Shopify 安全与风控

Cookie 横幅点了拒绝第三方脚本还在跑

现象#

点 Reject 后 Network 仍有 Meta 与 GTM 请求,marketingAllowed() 返回 false,但主题里手写的 gtag 照样初始化。

原因#

  • Shopify 自带横幅只约束它管理的像素,主题里直接写的脚本不受控
  • CMP 没有调用 setTrackingConsent,Shopify 侧一直认为没有同意
  • GTM 里的标签在容器内自行触发,绕过了主题的判断
  • 区域没设为需要同意时,非必要的数据处理默认就是全部放行

处理步骤#

  1. 在 Settings > Customer privacy 配置需要同意的区域并启用 banner
  2. 主题脚本初始化前先判断 analyticsProcessingAllowed() 与 marketingAllowed()
  3. 横幅按钮回调里调用 setTrackingConsent({analytics:false, marketing:false})
  4. 监听 visitorConsentCollected,在同意变化后再加载像素
  5. GTM 内使用 Consent Mode,把 analytics_storage 与 ad_storage 接到同一状态

验收标准#

拒绝后第三方请求为 0 且四个 Allowed 方法均为 false,接受后恢复请求,刷新后选择仍保留。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。