我在我的项目中设置了 Google Analytics 跟踪代码。
现在,我想检查一下有多少用户点击了我网站上的某个网址。
url 参数因用户而异。我想将它们分组在一个主要的子网址下。
我尝试的是设置谷歌分析将排除的所有参数,同时收集这些信息:使用 排除 URL 查询参数 文本框。
假设这是我的网址:
www.example.com/petDetails?petType=Cat&PetColor=Black similarly
www.example.com/petDetails?petType=Dog&PetColor=white
所以只在里面分组上面的网址
'/petDetails'
这适用于几个网址。但我发现了一些奇怪的数据,比如
www.example.com/petDetails#1102petType=Cat&PetColor=Black
www.example.com/petDetails#45654petType=Dog&PetColor=white
请注意 #someNumber 部分。在代码中的任何地方,我都添加了这种带有 # 的数字。
GA的报告中有很多这样的url,这些没有在里面分组
'/petDetails'
从而为每个创建唯一的条目。
我该如何消除这个问题。
任何帮助将不胜感激。如果您需要更多这方面的数据,请随时询问。
最佳答案
Nowhere in the code, I add such kind of number with # appended.
看起来您的网站上有指向主题标签/片段的 anchor 标签。它用于能够导航到页面上的特定点。
也许您没有明确地在您的页面上创建指向它们的链接,尽管您不太可能没有这样做。
但是,访问者也很容易例如查看页面的部分/标题并看到有一个 id='foo' 属性,然后只需将 '#foo' 添加到 URL 即可直接访问它。
但这远不如第一个场景,您实际上拥有这样的链接(或利用它进行导航的框架)。
无论如何,如果您想确保报告的 URI 只有路径,没有查询字符串或哈希,我建议您创建一个过滤器来去除它们。
进入谷歌分析并导航到 View 的管理/配置并点击过滤器 ,然后点击红色的 + 新过滤器 按钮。
选择创建新过滤器 单选按钮。
对于 过滤器名称 将其命名为“URI - 剥离查询,哈希”
对于 过滤器类型 , 选择 定制 然后选择高级 单选按钮。
对于 字段 A -> 提取 A ,选择“请求 URI”,然后在文本字段中输入以下内容:
^([^?#]+)
离开 字段 B -> 提取 B 空白的;你不需要它。
对于 输出到 -> 构造函数 ,选择“请求 URI”,然后在文本字段中输入以下内容:
$A1
在之后的复选框中,确保选中以下内容:
字段 A 必填 , 和 覆盖输出字段 .
最后,保存 过滤器。
编辑:
Thanks a ton @Crayon, for the detailed steps. It worked!. But will you be please kind to explain the Output To-> Constructor field? I can't seem to understand it.
好吧,高级自定义过滤器 是一种将东西从一个项目推到另一个项目的方法。它使您能够在不更改站点代码的情况下填充(或覆盖)内容。所以在上面的场景中,它是用来修改上报的URI的。另一个常见的场景是在 URI 前加上主机名,用于在多个域上具有页面的 View 。
所以基本上你可以做的是字段 A 和 B栏 ,使用正则表达式从指定的源匹配您想要的内容。正则表达式语法的一部分是将模式的一部分(或全部)分组(通过在模式的一部分周围放置括号),您可以稍后引用捕获的组。
由于其接口(interface)/设置约定,GA 具有引用它的特殊语法。所以
$A
是引用 中捕获的组的前缀字段 A .然后后面的数字是捕获的组,例如$A1
引用 中的第一个捕获组字段 A .在您上面的场景中,我们只使用一个字段,并且我们只有一个捕获的组。最终,所有这些都将进入 覆盖字段,这是您要使用值(在本方案中为 URI)和 弹出(或覆盖)的字段 build 者 是你用什么覆盖它。
所以总的来说,我们采用当前的 URI,使用正则表达式模式
^([^?#]+)
只匹配第一个 ?
(查询字符串分隔符)或 #
(散列/片段分隔符)以先到者为准并将其捕获为组$A1
.然后我们用该值覆盖 URI,这有效地去除了那些东西的 URI。旁注:我看到很多人(包括我自己,当我刚接触它时)对高级自定义过滤器感到困惑。 IMO 如果 GA 将表单字段的 foo->bar 标签更改为正确对齐的标签,并将它们重新标记为例如“新值”而不是“构造函数”。
关于php - 网址中的不必要数据 Google Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31921254/