1

在 Google Analytics 中,访问者级别的自定义变量存储在 cookie 中。

我希望仅当之前没有数据存储在此插槽中时才将一些数据存储在 GA 自定义变量中,即永远不要覆盖访问者级别的自定义变量。

有什么办法可以做到这一点,或者通过测试是否已经存储了一些数据,或者通过检索存储的值?

没有_getCustomVar,但是有什么方法可以让我自己做一些等效的事情而不“侵入”cookies?

4

2 回答 2

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 更好。

于 2012-11-01T18:49:01.037 回答
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>
于 2014-01-14T15:50:51.793 回答