访问以前存储的访客级自定义变量

时间:2012-11-01 16:34:13

标签: javascript google-analytics

在Google Analytics中,访客级自定义变量存储在Cookie中。

我希望将一些数据存储在GA自定义变量中,只有在之前没有数据存储在此广告位中,即永远不会覆盖访问者级自定义变量。

我能通过测试某些数据是否已经存储,还是通过检索存储的值来做到这一点?

没有_getCustomVar,但是我有什么方法可以做一些相同的事情而不会自己“乱砍”到Cookie中吗?

2 个答案:

答案 0 :(得分:1)

_getVisitorCustomVar(index)

例如:

_gaq.push(function() {
  var pageTracker = _gat._getTrackerByName(); // Gets the default tracker.
  var visitorCustomVar1Value = pageTracker._getVisitorCustomVar(1);
});

它仅适用于访客级自定义var,因为这是GA Cookie __utmz中唯一存储的客户端大小。但这正是你想要的东西。

如果您想查看是否已经设置了非访问者级自定义var,那么当您将自定义var设置为以后可以检索时,您需要自己编写逻辑来存储单独的cookie。但它应该是一个简单的事情,可能比侵入专有cookie更好的想法。

答案 1 :(得分:0)

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'xxxxxxxxxxxxxxx']);

   _gaq.push(function() {
        var pageTracker = _gat._getTrackerByName();
        var userTypeVar = pageTracker._getVisitorCustomVar(1);
    });

  _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>