【问题标题】:Complicated Analytics+Website Optimizer tracking复杂的分析+网站优化器跟踪
【发布时间】:2012-04-15 13:52:13
【问题描述】:

我有一个复杂的跟踪脚本。 :-) 基本上,我想跟踪用户对链接的点击(=这是一个转换)。所以链接有一个javascript onClick事件:

<a href='http://convertingpage.com' onClick='trackConversion(this)'>BUY NOW</a>

并且该函数包含多个跟踪脚本:

function trackConversion(that){
// CPC network tracking script (not important)
// another CPV network tracking script (not important)

----- HERE SHOULD COME THE GOOGLE WEBSITE OPTIMIZER SCRIPT -----

// tracking for google analytics goals (NOT website optimizer):
_gaq.push(['_trackPageview', '/clicked.php']);
}

您可能知道,网站优化器转换脚本如下所示:

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['gwo._setAccount', 'UA-1234567-2']);
  _gaq.push(['gwo._trackPageview', '/2462373171/goal']);
  (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>

你会如何将这个脚本(上图)放入 trackConversion() 函数中?

我试图删除所有不必要的(我猜是:-))代码并留下了这个:

  var _gaq = _gaq || [];
  _gaq.push(['gwo._setAccount', 'UA-1234567-2']);
  _gaq.push(['gwo._trackPageview', '/2462373171/goal']);
    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);

我删除了 (function(){...})();部分原因是我觉得在一个函数中包含一个函数似乎很奇怪。这行得通吗?

顺便说一句,当你尝试时:

alert(_gaq.push(['gwo._trackPageview', '/2462373171/goal'])); // returns 2

在上面的脚本中,它返回数字 2。当您注释第一行时,它会返回 0

//var _gaq = _gaq || [];
alert(_gaq.push(['gwo._trackPageview', '/2462373171/goal'])); // returns 0**

这些都行吗?

【问题讨论】:

    标签: jquery web analytics tracking optimization


    【解决方案1】:

    首先,(function() {})(); 是一个匿名函数,没什么奇怪的。如果您已经在页面上使用了 Analytics,则可以删除所有这部分(它调用相同的跟踪代码)。

    简单地说

    var _gaq = _gaq || [];
    _gaq.push(['gwo._setAccount', 'UA-1234567-2']);
    _gaq.push(['gwo._trackPageview', '/2462373171/goal']);
    

    在您的function trackConversion() 中,它应该可以正常工作!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-09
      • 1970-01-01
      • 2012-01-16
      • 2014-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多