Google Analytics:_setvar到新的跟踪代码

5

我一直在使用较旧版本的分析代码,并使用以下代码来跟踪不同类型的用户

<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-xxxxxxx");
pageTracker._setVar('memberlevel-2');    pageTracker._trackPageview();
} catch(err) {}</script>

如何在新的异步代码中使用它?Google Analytics 论坛已经不再更新,我得不到回应 :(

2个回答

3

尝试阅读以下内容以设置自定义变量:

http://code.google.com/apis/analytics/docs/tracking/gaTrackingCustomVariables.html

跟踪页面浏览的示例代码:

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

3

_setVar仍然可用,但你应该使用_setCustomVar代替,因为它更强大。

以下是使用异步代码的旧代码示例:

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_setVar', 'memberlevel-2']); 
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

如果要使用setCustomVar,可以这样做:

  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_setCustomVar', 1, 'memberlevel', '2', 3]);// page-level scope (3), in slot #1
  _gaq.push(['_trackPageview']);

1
请注意,_setVar_setCustomVar的作用域是不同的。默认情况下,_setVar设置一个持久的用户级变量,适合在登录后设置用户的会员级别等。_setCustomVar默认为页面级别作用域(3),更适合跟踪单个页面的其他属性(类别等)。如果您切换到_setCustomVar,应该为第四个参数指定1(用户级别作用域)。更多信息请参见:https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingCustomVariables - Nate Cook

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