11

我试图对我的网站访问者通过两个特定的多页操作(例如事件注册)的方式进行一些仔细分析,以确定某些访问者在何处以及为什么没有完成这些操作。我正在尝试使用 Google Analytics(分析)“访客流”工具来检查数据,尤其是找出“未完成”访客接下来去了哪里。

我遇到的困难是开发人员如何在我们的 MVC 框架中组合 URL 结构。粗略地说,URL 如下所示:

/contacts/432/edit                 /* create new person profile, [0-9]+ format for new person ID */
/event_orders/763/edit             /* create new event reg, [0-9]+ format for new event registration */
/event_orders/763?success=true     /* action completed */

由于 URL 的构造方式,目前无法使用 GA 访问者流分析来查看站点用户如何通过操作序列。

我希望:我希望能够通过使用正则表达式来定义 URL 分组。

我知道在过滤页面视图时可以使用正则表达式,但我在“访客流”部分中没有找到任何类似的内容。如果有什么看起来好像我需要定义站点范围的 URL 分组以便始终将/contacts/[0-9]+/edit其视为相同的 URL,从而在查看访问者流时将“创建新事件注册”页面视图分组为一个块。

是否有可能做到这一点?

4

4 回答 4

5

不幸的是,如果不创建新配置文件以及一些自定义配置文件过滤器,就没有干净的方法可以做到这一点。

为此,只需跳转到管理界面,创建一个新配置文件(如果您不想混淆现有数据 - 您可以创建大量这些数据)并使用以下选项创建自定义高级过滤器:

类型:搜索和替换

字段:请求 URI

搜索字符串: ^/(contacts|event_orders)(/\d*)(.*)

替换字符串: /$A1$A3

这是 GA 界面中的外观:

在此处输入图像描述

于 2012-10-04T09:47:27.877 回答
5

在最初的问题中,我陈述了我的期望:“我希望能够通过使用正则表达式来定义 URL 分组。”

事实证明,谷歌分析的访问者流量正是允许这样做的!就是这样。

  1. 加载访客流量,并应用您想要的任何其他过滤器和细分。

  2. 浏览访客流界面以查找您要分组的页面的一个示例。就我最初的问题而言,一个例子是/contacts/432/edit

  3. 左键单击该节点并选择“通过此处探索流量”。这将转换界面,使其显示该节点的所有入口路径和出口路径,无论该节点在每个访问者与站点交互的顺序中出现在何处。

  4. 单击新显示中节点上方的“齿轮”图标。这将打开一个新的对话框,允许多个“匹配”选项:“包含”、“开始于”、“结束于”、“等于”和“匹配正则表达式”!

  5. 我没有在这里深入研究正则表达式灵活性的深度,但是对于我正在寻找的分组之一,我进入/contacts/*/edit了第二个字段

  6. 第三个字段是可选的,但允许您为节点使用更友好的名称。

  7. 点击“应用”。现在所有匹配的 URL 都将被分组!

  8. (奖励)为了查看已分组的特定 URL 以及每个 URL 的一些概览统计信息,请左键单击节点并单击“组详细信息”。

快乐的正则表达式!

于 2012-11-23T02:22:06.260 回答
2

Robert Kingston 几乎是正确的,但是替换字符串应该是完全不同的——当你使用括号来捕捉你插入的字符串时\1\2等等。

这是更改 URL 的方法:

  1. 创建一个新视图。
  2. 为其添加过滤器。
  3. 选择非标准过滤器。
  4. 使用“搜索和替换”选项。
  5. 在过滤器归档中选择“请求 URI”。
  6. 在“搜索字符串”中输入正则表达式(注意 URI 以 开头/,例如http://abc.eu/my/file.php?abcURI 是:)/my/file.php?abc
  7. 在“替换字符串”字符串中,您可以输入您想要的任何文本。

在这种特殊情况下,您需要:

  1. 搜索字符串:^/(\w+)/(\d+)[/?](\w+)(.*)
  2. 替换字符串:/\1/\3?\2&\4

原始 URI 和新 URI:

/contacts/432/edit -> /contacts/edit?432&
/event_orders/763?success=true -> /event_orders/success?763&=true  

这应该可以让您弄清楚原始 URI 是什么,但访问者流应该看起来更好(查询字符串在流中被忽略)。

笔记!即使您向旧视图添加过滤器,您的旧数据也不会被修改。这就是您应该添加新视图的原因。否则,您将使用旧格式和新格式的 URL 混合数据。

于 2014-01-29T00:54:38.387 回答
1

Robert Kingston 说得对,尽管可能值得注意的是 $A1$A3 在替换字符串中的含义。

$A 表示过滤字段 A,1 表示“第一个弯曲括号中的内容”,3 表示“第 3 个括号中的内容”。开头的斜线实际上只是一个斜线。

我强烈建议为这种事情创建额外的配置文件,并始终拥有一个在发生灾难时永远不会触及的“普通”配置文件。

于 2012-10-09T13:44:27.080 回答