Google Analytics pageTracker не определен? - PullRequest
34 голосов
/ 17 августа 2010

Немного запутался ... Я пытаюсь отследить щелчки по ссылкам mailto, но постоянно отображается "pageTracker не определен".У меня есть следующий код перед моим конечным тегом body ()

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-000000']); // This is my account number, I have added the zeros in this editor
  _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>

Затем я использую это в своих ссылках mailto

<a href="mailto:hello@mydomain.co.uk" onClick="javascript:pageTracker._trackPageview('/mailto/hello');">hello@mydomain.co.uk</a>

Я не могу понять, почему он не работает?Любая помощь будет оценена

Ответы [ 4 ]

75 голосов
/ 17 августа 2010

Новый код Async Google Analytics (который вы используете) работает немного иначе, чем не-Async. В любое время, когда вы хотите вызвать метод на pageTracker, вы просто помещаете «сообщение» в очередь «_gaq».

<a href="mailto:hello@mydomain.co.uk" onClick="_gaq.push(['_trackPageview', '/mailto/hello'])">hello@mydomain.co.uk</a>

Хотя отслеживание почтовой ссылки может работать лучше как событие:

<a href="mailto:hello@mydomain.co.uk" onClick="_gaq.push(['_trackEvent', 'mailto', 'home'])">hello@mydomain.co.uk</a>

Подробнее см. В Руководстве пользователя по асинхронному отслеживанию .

20 голосов
/ 21 ноября 2010

Мы также можем добавить:

//mantain syntax between old and new asynch methods
//http://code.google.com/apis/analytics/docs/tracking/asyncUsageGuide.html#Syntax
function _pageTracker (type) {
    this.type = type;
    this._trackEvent = function(a,b,c) {
       _gaq.push(['_trackEvent', a, b, c]);
    };
}

var pageTracker = new _pageTracker();

в новом коде для сохранения старого кода в страницах.

3 голосов
/ 25 октября 2010

Вот код:

onClick="_gaq.push(['_trackEvent', 'pdf', 'download', '/pdf/myPdf'])">myPdf</a>
1 голос
/ 21 декабря 2010

Мне также нужен был способ загрузки PDF-файлов, и вот что я использовал:

<a href="http://www.domain.com/assets/downloads/filename.pdf" target="_blank" onClick="_gaq.push(['_trackEvent', 'Downloads', 'Download', 'Price Brochure PDF'])">Download Brochure</a>

Для получения дополнительной информации о _trackEvent , вот страница API Doc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...