PII(个人身份信息)绝不应发送给 Google Analytics,这不仅违反了 GA 使用条款,而且还会泄露敏感的用户数据。那么如何在使用 Google Tag Manager (GTM) 和 Google Analytics 4 (GA4) 时从 URL 中删除 PII,例如查询字符串参数(电子邮件、用户 ID、...),甚至从位置路径中删除?
1 回答
假设您已经在页面上设置了 GA4 属性和 GTM。
因此,让我们为 GA4 配置创建新标签。作为测量 ID,我使用查找表变量(当您有多个环境,如测试、登台、生产时,这是完美的 - 所有这些都有单独的测量 ID,但使用相同的 GTM 安装脚本),但您可以简单地编写您的 G-XXXXXXXXX测量 ID 在这里。然后展开要设置的字段部分,添加page_location
为字段名称,然后单击值旁边的乐高按钮。
作为变量类型,选择自定义 JavaScript。在左上角写下新变量的名称,我使用了Redacted Page Location
.
现在我们离如何删除 PII 越来越近了。在自定义 JavaScript 部分插入应该返回编辑 URL 的 JS 函数。Mine 函数使用正则表达式将来自 URL 的 PII 替换为一些编辑过的文本。我想从 url 路径中编辑的参数是公司、项目、史诗和任务的 ID;和来自查询参数的 userId。
function() {
var url = window.location.toString();
var filter = [
{
rx: /company\/\d+/g,
replacement: 'company/REDACTED_COMPANY_ID'
},
{
rx: /projects\/\d+/g,
replacement: 'projects/REDACTED_PROJECT_ID'
},
{
rx: /epics\/\d+/g,
replacement: 'epics/REDACTED_EPIC_ID'
},
{
rx: /tasks\/\d+/g,
replacement: 'tasks/REDACTED_TASK_ID'
},
{
rx: /userId=\d+/g,
replacement: 'userId=REDACTED_USER_ID'
},
];
filter.forEach(function(item) {
url = url.replace(item.rx, item.replacement);
});
return url;
}
假设我的页面的 URL 是https://www.example.com/company/2247/projects/2114/epics/19258/tasks/19259?userId=1234567
,此函数将其编辑为https://www.example.com/company/REDACTED_COMPANY_ID/projects/REDACTED_PROJECT_ID/epics/REDACTED_EPIC_ID/tasks/REDACTED_TASK_ID?userId=REDACTED_USER_ID
。
选择新添加的自定义变量,它的名称应该在 Value 字段中,并保存您的 GA4 标签。
.
现在让我们测试一下。切换到预览模式并打开您的网站。在 GA 头中转到 GA4 属性的调试视图,等待 page_view 在时间轴中弹出(也许您必须再次重新加载页面),单击它并展开 page_location 变量。您应该会看到编辑后的 URL。
就这些,尽情享受吧!