Ошибка отслеживания внешней ссылки при открытии ссылки в новом окне в Google Analytics? - PullRequest
0 голосов
/ 14 января 2011

Прежде всего, я прошу прощения, если считается плохим этикетом для перекрестной публикации на сайтах стека-обмена, но это казалось подходящим как для сайта веб-мастеров, так и здесь, так как это общая проблема для веб-мастеров, но может быть решена программистами , В любом случае, здесь идет ...

ОК, так что это кажется очень простой проблемой, но мне еще предстоит найти решение, которое решает следующие задачи:

  • Открывает ссылку в новом окне
  • Отслеживает событие в GA при использовании асинхронного кода
  • Не вызывает блокирование всплывающих окон (вместо target.open используется target = "_ blank")

Большая часть кода, который я видел, включая Google, не учитывает случай открытия в новом окне - они просто используют window location.href.

Даже GAAddons (http://gaaddons.com/),, который взимает плату за коммерческое использование, кажется, не справляется с открытием в новых окнах должным образом.

Возможно, я упускаю что-то простое - я был бы рад, если бы это было так, и благодарил бы всех, кто указал мне на это!

Если никто не может предоставить пример, я опубликую некоторые тестовые случаи, которые я создал, чтобы проиллюстрировать проблему.

Спасибо.

[EDIT] С тех пор я более тщательно протестировал код GAAddons и нашел, что он работает. Я предполагаю, что проблема, о которой ранее сообщал клиент, использующий Chrome 7 в Windows, была скорее проблемой конфигурации, чем чем-то связанным с самой библиотекой GAAddons.

Ответы [ 2 ]

1 голос
/ 15 января 2011

Вы помещаете это в атрибут onclick ссылки:

<a href="somePage.html" target="_blank" onclick="pageTracker._trackPageview(this.href);">some link</a>
0 голосов
/ 06 апреля 2011

Метод, который я нашел, чтобы удовлетворить все требования, которые я упомянул, найден здесь: http://cutfromthenorth.com/add-external-link-tracking-with-jquery-and-google-analytics/

На самом деле это довольно просто, что заставляет меня думать, что была другая причина, почему другиекод не работал в предыдущих тестах.

Однако я могу подтвердить, что метод, упомянутый в комментариях на этой странице Google - http://www.google.com/support/googleanalytics/bin/answer.py?hl=en&answer=55527 - не соответствует вышеуказанным требованиям (триггер новых оконвсплывающее предупреждение в Chrome и IE).

Код Google работает для отслеживания внешних ссылок, не открытых в новом окне.

вот фрагмент:

$('a[target=_blank]').click(function(){
try{
    _gaq.push(['_trackEvent', 'External Links', 'Click', $(this).attr('href')]);
} catch(err) {}
return true;
});

IПротестировано в следующих браузерах: ПК: IE 6 - 9 Firefox 3.6, 4.0 Chrome 9, 10 Safari 5 Opera 11

Mac: Safari 5 Chrome 10 Firefox 3.6, 4.0

Также протестированона iPhone 4 и собственный браузер Android на Gingerbread

...