在Google Analytics中跟踪登录事件

8
我想在我的网站上跟踪登录事件。用户输入用户名和密码,然后单击登录,表单被提交,服务器检查密码是否正确,如果正确,则重定向到主页。但是,我该如何将登录事件添加到GA中呢?如果我将其添加到登录按钮上,它不会完全准确,因为它会计算失败的登录尝试。有什么解决方法吗?谢谢,Chris。
5个回答

7

好问题!

我认为你想要的是谷歌分析提供的自定义变量

简单地说,对于用户访问的每个页面,您都可以设置一个自定义变量,例如用户名。

我不认为您对登录事件感兴趣,而是对已登录用户访问的内容感兴趣——这个解决方案可以解决您的问题。


2
我正是使用自定义变量来实现这一点的。这篇文章比Google文档更好地解释了它:快速提示:Google Analytics自定义变量的威力 - jk.
2
将用户名存储在 Google Analytics 自定义变量中是违反其服务条款的行为。请访问 https://dev59.com/G2kw5IYBdhLWcg3wKXX_。 - zacropetricopus
现在我们可以在跟踪代码中设置用户ID。请参见:https://support.google.com/analytics/answer/3123666 - ruhong
1
尽管被接受,但这与最初意图的“捕获登录事件”相违背,与此答案的假设相反,我们中的一些人实际上确实希望记录。@joesk的答案更适用。 - kevlarr

5
定制变量的答案将如下所述满足您的需求,但如果您想要另一种选择(或者确实想要使用跟踪事件),您还可以添加一个成功登录的参数,然后按照您的意愿进行读取和处理。
例如:
 <a href="<?php echo wp_login_url(get_permalink().'?login=true');  ?>">Login</a>

这将创建一个指向登录页面的链接。如果登录成功,它将在URL中带有参数login=true重定向回当前页面。

(您可以通过JavaScript检查此参数,并根据其触发分析跟踪事件调用)。


1
这个回答比被采纳的回答好多了。与被采纳的回答所假设的相反(实际上违背了原始问题),我们中的一些人确实想要跟踪实际的登录事件。在客户端检查 login=true,如果存在则发送一个事件,然后从 URL 中删除,以防止重新加载发送多余的事件。 - kevlarr
请注意,应该使用 replaceState,这样就不会有历史对象可以返回到带有 login=true 查询参数的状态... 假设不需要支持IE9及以下版本。 - kevlarr

0

自定义变量可用于单个用户,但您需要设置唯一的ID,以便在从GA中提取数据时只有您能够识别它。因此,在您的数据库中为每个用户设置一个GoogleAnalyticsID,然后将其作为自定义变量发送以跟踪用户。


0
一种方法是让您的登录重定向到一个页面,上面显示类似于“感谢您登录”的内容,并将此页面视为 Google Analytics 中的注册页面浏览量。然后在 5 秒钟后自动重定向到您正在查看的页面。我已经看到很多网站这样做了。如果您的登录使用的是部分刷新,则甚至可以在不经过单独页面的情况下完成。

0

最简单的方法是使用虚拟页面浏览(tutorial)。这是一小段JS代码,你可以在任何想要的事件上执行。它让GA认为有一个页面视图。所以你可以创建一个条件语句,比如“如果登录== OK->创建URI为“virtual/login/OK”的虚拟页面视图。然后你只需将此URI设置为目标。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接