【问题标题】:Removing Query Strings from the URL Using Google Tag Manager使用 Google 跟踪代码管理器从 URL 中删除查询字符串
【发布时间】:2018-06-06 09:13:24
【问题描述】:

我正在尝试通过从 URL 中删除查询字符串来整理 Google Analytics 中的分析,但这分为三个要求;

  1. 我想从 GA 分析中删除查询字符串。
  2. 广告系列 UTM 仍需正常工作。
  3. 阻止在 UTM 中收集的任何 PII 访问 GA。

我找到了一些 JavaScript 方法(附在下面)可以完成任务 3,但我不知道这个实现是否会影响任务 1 和 2。

这引出了我的问题;

JavaScript 方法是否会阻止所有查询字符串完全达到 GA,从而破坏我的广告系列 UTM?

感谢您的帮助!

JavaScript 附在下面

function() {

var params = ['name', 'email'];
var a = document.createElement('a');
var param,
  qps,
  iop,
  ioe
  i;

a.href = {{Page URL}};

if (a.search) {

qps = '&' + a.search.replace('?', '') + '&';

for (i = 0; i < params.length; i++) {

  param = params[i];
  iop = qps.indexOf('&' + param + '=');

  if(iop > -1) {

    ioe = qps.indexOf('&', iop + 1);
    qps = qps.slice(0, iop) + qps.slice(ioe, qps.length);

  }

}

a.search = qps.slice(1, qps.length - 1);

}
 return a.href;
}

【问题讨论】:

    标签: javascript google-analytics google-tag-manager


    【解决方案1】:

    如果您使用这样的函数 (window.location={{clean URL}}) 的结果更新 DOM 中的页面位置,您自然会导致重新加载而导致很多问题。

    如果您使用此函数的结果来设置与页面和引荐来源相关的 UA 参数,那么它不会影响与点击中的这些参数无关的任何内容。例如,您可能想要清理不只是页面点击的page 字段:

    utm 参数之类的内容是从普通 DOM/BOM(例如 window.location)和 sent as separate parameters 中提取的,并且不会在稍后在服务器端从 page related parameters 计算,除非您自己在 Analytic 的自定义过滤器中进行提取。

    【讨论】:

    • 感谢您的帮助。请原谅我的无知,但你能澄清一下吗?我该怎么做?我是使用我现有的 JS 还是必须让另一个来生成这个 {{clean url}}?
    • 如果您将其定义为 GTM customjs 变量,我将使用干净的 url 作为脚本的名称。如果您想去除所有参数但仍然没有,则可以改为从 URL 类型变量开始影响 UTM 参数如何被其他 cmets 使用,但是您可能仍需要添加回您想要跟踪的特定 URL 参数,即用于站点搜索。您想用过滤后的变量覆盖哪些分析参数,以及您希望在变量中使用什么级别的过滤,您可以分别在标签和变量定义中分别处理和调整。
    【解决方案2】:

    您还可以通过在视图设置中设置排除 URL 查询参数,使用 Google Analytics 内置机制来删除 URL 参数。文档在这里:https://support.google.com/analytics/answer/1010249?hl=en 不需要 JS。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      • 2017-12-20
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-22
      相关资源
      最近更新 更多