使用 Google 跟踪代码管理器从 URL 中删除查询字符串

2024-01-21

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

  1. 我想删除 GA 分析中显示的查询字符串。
  2. 竞选 UTM 仍然需要发挥作用。
  3. 阻止 UTM 中收集的任何 PII 攻击 GA。

我发现了许多可以执行任务 3 的 JavaScript 方法(见下文),但我不知道这种实现是否会影响任务 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;
}

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

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

像 utm 参数之类的东西是从正常的 DOM/BOM 中提取的(例如window.location) and 作为单独的参数发送 https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#cn且不计算自页面相关参数 https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#dp稍后在服务器端,除非您自己在 Analytics 自定义过滤器中进行提取。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Google 跟踪代码管理器从 URL 中删除查询字符串 的相关文章

  • Javascript:如何检查异步操作是否仍在挂起/正在进行中?

    我想知道是否可以以某种方式检查 Javascript 中的异步操作是否仍处于待处理状态 因为我正在执行调用特定 URL 的数据库请求 虽然 db 调用仍在进行中 但我想停止任何其他传入的 db 调用 这意味着 停止对该 URL 的任何进一步
  • 允许指针(单击)事件穿过元素,同时保持滚动功能

    我的目标是拥有一个允许 下面要点击 交互的元素 滚动 众所周知 1 的解是pointer events none 这正如中所描述的单击 DIV 到底层元素 https stackoverflow com questions 3680429
  • 如何制作像Stackoverflow一样的可折叠评论框

    我正在构建一个网站 并且有一个状态更新列表 我希望允许用户为列表中的每个项目撰写评论 但是我正在尝试实现一个类似于堆栈溢出工作方式的用户界面 特别是可折叠的评论表单 列表 用户在其中单击对列表中的特定状态更新添加评论 并且在列表中的该项目下
  • ExtJS 4:克隆商店

    我正在尝试找出如何克隆Ext data Store不保留旧的参考 让我用一些代码更好地解释一下 这是源商店 var source Ext create Ext data Store fields name age data name foo
  • 从 DOM 中删除后,动态添加的 JavaScript 脚本会继续执行

    因此 我正在创建一个 SPA 并使用 AJAX 将 HTML 页面加载到我网站的索引页面中 问题是 当包含我的一个页面时 它似乎会徘 徊并执行其中的 JavaScript 代码 即使它随后从 DOM 中删除 索引 html 正文 div d
  • 捕获外部脚本文件中的 javascript 错误

    我有一点 JavaScript Jquery 工具的叠加层 http flowplayer org tools overlay index html 当放到错误使用它的页面上时可能会引发异常 我正在尝试优雅地处理它 我有一个通用的 wind
  • 区分单击与 mousedown/mouseup

    我已经阅读了有关这种情况的 stackoverflow 上的几个答案 但没有一个解决方案有效 我尝试根据用户是否单击某个元素或使用 jQuery 将鼠标按住该元素来执行不同的操作 有可能做到这一点吗 onMouseDown 将在按下左侧或右
  • JSDoc:如何在生成的文档中包含自定义 css 文件模板?

    JS文档docs https jsdoc app about configuring default template html say 将图像目录复制到输出目录 复制全部 将 myproject static 中的静态文件复制到输出目录
  • 如何在 JavaScript 中构建一个计算数组中出现次数的对象?

    我想计算数组中某个数字出现的频率 例如 在Python中我可以使用Collections Counter创建一个字典 记录某个项目在列表中出现的频率 据我所知 JavaScript 是这样的 var array 1 4 4 5 5 7 va
  • History.replaceState 仍然向“浏览历史记录”添加条目

    具体来说 调用以下代码片段 history replaceState undefined undefined value 正确地不会影响当前页面的后退按钮行为 但是will在 浏览历史记录 页面添加一个条目 这是我不想要的 下图是 Chro
  • 为什么我的 onclick 事件自动触发

    加载页面时最初显示 Hello World 我希望它仅在单击按钮后显示 我知道我可以通过向按钮添加内联事件侦听器来做到这一点 我可以只用脚本编写所有这些代码吗
  • 正则表达式 - 避免表达式中出现字符串

    我正在尝试创建一个应该匹配以下情况的正则表达式 如果单词完全匹配 first second third 那么匹配应该失败 但如果它周围有任何字符 那么应该匹配该字符串 我还需要避免字符串中的某些字符集 如果这些字符是字符串的一部分 则匹配结
  • 禁用任何类型的浏览器窗口滚动?

    有没有办法禁用滚动 不仅仅是滚动条 还有浏览器窗口的全部功能 根据您对 Keit 的回答 您不想在打开灯箱时滚动处于活动状态 如果是这种情况 您可以使用以下 css 在打开灯箱的同时向正文添加一个类 这个解决方案的好处是它保留了滚动 空间
  • 如何检查jquery数据表中的每个复选框?

    我有一个第一列带有复选框的表格 我使用 jQuery DataTable 插件显示我的表格 我制作了 2 个链接来选择 取消选择每个复选框 这是选择全部的一个 a href Select all a 和 JavaScript functio
  • Tween JS 基础知识之三个 JS 立方体

    我是 Tween JS 的新手 尝试使用 Tween 制作一个向右移动的简单动画 下面是我在 init 函数中的代码 我使用的是三个 JS var geometry new THREE CylinderGeometry 200 200 20
  • 如何使用 .append() 将 React 组件附加到 HTML 元素

    我正在尝试对我的博客实现无限滚动 我有 const articlesHTML document querySelector articles 作为容器 每次点击装载更多按钮 我想将新文章附加到主 html 元素 如下所示 const res
  • Javascript - 如何计算数字的平方?

    使用 JavaScript 函数 function squareIt number return number number 当给定数字 4294967296 时 函数返回 18446744073709552000 每个人都知道真正的答案是
  • 使用 JavaScript 从 URL 变量读取来加载不同的 CSS 样式表

    我试图在我的 WordPress 博客上使用两个不同的样式表 以便在通过 Web 访问页面时使用一个样式表 而在通过我们的 iOS 应用程序访问博客内容时使用另一个样式表 现在 我们将 app true 附加到来自 iOS 应用程序的 UR
  • 如何在 ChartJS 中创建自定义图例

    我需要使用 ChartJS 库为我的圆环图创建自定义图例 我已经使用 ChartJS 提供的默认图例创建了甜甜圈 但我需要一些修改 我希望其价值高于汽车名称 另外 我不喜欢粘性图例 我想将其与甜甜圈分开 这样我就可以更改字体 框的样式 例如
  • html5 canvas 使用图像作为蒙版

    是否可以使用具有形状的图像作为整个画布或画布内图像的蒙版 我想将图像放置在画布中 并在图像上添加蒙版 然后将其另存为新图像 您可以使用 source in globalCompositeOperation 将黑白图像用作蒙版 首先 将蒙版图

随机推荐

  • 如何在不使用 Select 类的情况下从下拉列表中选择值,因为我在跨度中将下拉列表作为列表框而不选择?

    My HTML code is here fieldset div class clearfix div class clearfix div class clearfix div class clearfix div class qs f
  • 如何使用 Selenium 在单个页面上有效地抓取许多元素(评论)

    我一直试图通过重复单击按钮来抓取单个网址上可用的所有评论 显示另外 6 条评论 我相信这个问题适用于任何使用 Selenium 在单个 url 上废弃许多动态元素的人 问题 当评论数量超过几百时 循环变得非常慢 我正在使用 Selenium
  • 子模块的相对导入

    在Python中 我如何执行与以下内容等效的操作 import http client 但使用相对导入 from import http client import http client 对于一个包http在当前包中 我想然后访问clie
  • 铯标签模糊

    我使用以下代码创建了一个 Cesium 标签 var label Cesium LabelGraphics new Cesium LabelGraphics text lab verticalOrigin Cesium VerticalOr
  • 对于 Int32 来说值太大或太小 - Facebook 和 dotnetopenauth

    我正在尝试获取一个与 dotnetopenauth 和 facebook 一起使用的示例项目 我有这个代码 namespace OAuthClient using System using System Configuration usin
  • 使用聚合函数和 SELECT 进行更新

    我正在尝试编写一条 SQL 指令来更新与所有交货和订单总数相关的数据库库存产品数量 UPDATE tbl Product SET tbl Product Quantity Q Quantity FROM tbl Product INNER
  • CLR 内存不足异常

    我们遇到了很多内存不足的异常 但我们似乎无法诊断发生了什么 这似乎是一个在几分钟内内存使用量从 300 MB 飙升至超过 1 GB 的问题 现在这是一个IIS https en wikipedia org wiki Internet Inf
  • pandas agg 和 apply 函数有什么区别?

    我分不清熊猫之间的区别 aggregate and apply功能 以以下为例 我加载一个数据集 执行groupby 定义一个简单的函数 和任一用户 agg or apply 正如您所看到的 我的函数中的打印语句会产生相同的输出 使用后 a
  • 从C#中的角度计算圆圆周上的点?

    我想这是一个简单的问题 但我当前的代码得到了一些奇怪的结果 而且我没有数学背景来完全理解原因 我的目标很简单 如标题所示 我只想找到距中心点一定距离和角度的点 我当前的代码 Point centerPoint new Point 0 0 P
  • 将 MySQL 查询转换为 Codeigniter 语法

    我在将 MYSQL 查询转换为 CI 语法时遇到一些问题 这是我的 MySQL 语法 select a pbj name as NAMA PERUSAHAAN count a id pbj as JUMLAH PAKET group con
  • Clojure:懒惰魔法

    几乎 2 个相同的程序可以生成无限惰性的随机序列 第一个不会崩溃 第二次崩溃 出现 OutOfMemoryError 异常 为什么 Return infinite lazy sequence of random numbers defn i
  • 加盐你的密码:最佳实践? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我一直很好奇 对密码进行加盐以进行哈希处理时 前缀还是后缀哪个更好 为什么 或者只要你加盐就没关系吗 解释一下 我们现在 希望 都知道我们应该s
  • 在 IntelliJ Idea 中禁用代码折叠?

    如何在 IntelliJ idea 中禁用 或隐藏 这部分 Go to 文件 gt 设置 gt 编辑器 gt 常规 gt 代码折叠 Uncheck 显示代码折叠轮廓
  • 如何通过将所有选项放入 mongodb 的 Node.js 驱动程序的连接字符串中来连接 X509?

    我正在使用可用的密钥mongodb 文档 http mongodb github io node mongodb native 3 6 api MongoClient html使用带有 Node js 驱动程序的 X509 身份验证的自签名
  • 将 speedtest.net api 与 React Native 结合使用

    我正在创建一个 Android React Native 应用程序并尝试使用速度测试 net api https github com ddsol speedtest net获取移动设备的上传和下载速度 但是 当我尝试将库集成到 React
  • SQL Server 2008 中的检查约束

    拜托 我刚刚开始学习 SQL 并且陷入困境 我正在尝试为我的测试项目构建一个数据库 我创建了一些表 做了关系 定义了主键和外键 所有这些都在 SQL Server 2008 中通过可视化界面 表设计 编辑 没有声明编码 还没有到达那里 但我
  • 在 Sublime Text 中,如何查找和替换文件名

    在 Sublime Text 中有没有一种方法可以找到模式并将其替换为文件名 例如 我有一堆包含人物的文件名 我想用人来代替它 in SideBarEnhancements有一个选项Mass Rename Selection under F
  • Apache HTTP 连接与 Android 6.0 (Marshmallow)

    有没有办法将 Apache 库直接包含在 Gradle 中以使其与 Android 6 0 一起使用 我尝试包含这样的库 compile org apache httpcomponents httpcore 4 4 1 compile or
  • 代号一号如何运作?

    我正在寻找针对多个移动平台进行开发的替代方案 并发现代号一 http www codenameone com 使用 Java 作为通用语 而不是 HTML CSS JS 或脚本语言 我找不到的是它是如何工作的 它是否将 JVM 与 iOS
  • 使用 Google 跟踪代码管理器从 URL 中删除查询字符串

    我试图通过从 URL 中删除查询字符串来整理 Google Analytics 中的分析 但这分为三个要求 我想删除 GA 分析中显示的查询字符串 竞选 UTM 仍然需要发挥作用 阻止 UTM 中收集的任何 PII 攻击 GA 我发现了许多