【问题标题】:Google Analytics - how can I track a page name using the new asynchronous code?Google Analytics - 如何使用新的异步代码跟踪页面名称?
【发布时间】:2011-04-07 20:18:03
【问题描述】:

我正在使用 Google 为 Google Analytics 提供的以下代码。

<script type="text/javascript">
            var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
            document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
         ry {
                var pageTracker = _gat._getTracker("UA-XXXXX-X");
                pageTracker._trackPageview("PAGENAME");
            } catch (err) { }
 </script>

但是 Google 已经发布了异步 Javascript 代码(如下)。

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

我的问题是:在旧代码中,我使用 PAGENAME (pageTracker._trackPageview("PAGENAME");) 跟踪页面。如何使用新的异步代码来做到这一点?

【问题讨论】:

    标签: google-analytics google-analytics-api web-analytics


    【解决方案1】:

    您可以重写异步跟踪代码中的第三行代码并将其更改为以下内容:

    _gaq.push(['_trackPageview', 'PAGENAME']); 
    

    这是记录在here

    【讨论】:

      【解决方案2】:

      RTFM:http://code.google.com/apis/analytics/docs/gaJS/gaJSApiBasicConfiguration.html#_gat.GA_Tracker_._trackPageview

      您的示例如下所示:

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

      这只是指定第二个参数的情况。

      【讨论】:

      • 不用担心。总是值得首先为“[产品]文档”做一个谷歌。我就是这样找到它的 ;-)
      • 我希望 SO 可以允许将多个回复标记为已回答。 halfdan先生的回复比你快6秒。
      • 啊,嘘!如果你想让我参加比赛,我有两个赞成票:-P
      猜你喜欢
      • 2013-10-29
      • 2018-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多