php - 网址中的不必要数据 Google Analytics

标签 php url google-analytics google-analytics-api

我在我的项目中设置了 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 必填 , 和 覆盖输出字段 .

最后,保存 过滤器。

enter image description here

编辑:

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/

相关文章:

php - 使用 Php 和 Ajax 更新 Mysql 数据库数据

java - Android:如何将带有空格的 URL 字符串解析为 URI 对象?

csv - 如何使用 Google SpreadSheet 将成本上传到 Google Analytics

php - 关联数组索引中的美元符号

php - MYSQL COUNT 不为 Left Join 和 Group By 返回 0

php - 从 PHP 脚本获取 Windows 和 Linux 上的主目录的最佳形式是什么?

php - 确认和取消按钮 Laravel Sweet Alert

c# - 不能将超链接写成字符串

url - 如何使用 MongoDB/Node.js 创建友好的 URL?

google-analytics - 获取用户的事件日志谷歌分析