Подтвердить что ты не робот

Google Analytics: как отслеживать страницы в одном приложении?

В настоящее время на моем веб-сайте я использовал HTML5 pushState() и popState в ссылках для увеличения скорости. Однако это действительно не изменяет реальный URL-адрес, и похоже, что это повлияет и испортит код Google Analytics. (не отображается изменение URL-адреса) Есть ли возможное решение для этого? Спасибо,

4b9b3361

Ответ 1

Если вы используете новый API analytics.js, документация Google требует следующий код для запуска события:

ga('send', 'pageview', '/some-page');

Если вы используете старый ga.js API, Дэвид Уолш предлагает веб-сайты AJAX использовать метод _gaq.push:

_gaq.push(['_trackPageview', '/some-page']);

Ответ 2

Я знаю этот старый вопрос, но поскольку этот вопрос является первым результатом в Google о отслеживании pushState() в Google Analytics, и все ответы неверны, я решил ответить на него.

В других ответах, которые они упомянули, непосредственно использовать ga ('send'.....), но это неправильный способ сделать это.

Сначала вам нужно "установить" параметры, а затем использовать "отправить" для его отслеживания.

Если вы хотите обновить только URL-адрес, используйте следующий код

// set new url 
ga('set', 'page', '/new-page');

// send it for tracking
ga('send', 'pageview');

Ответ 3

Недавний ответ (2017)

Теперь вы можете использовать Google autotrack.js, script, который увеличивает analytics.js.

Он включает плагин, в котором автоматически отслеживает изменения URL для приложений с одной страницей.

Вам просто нужно включить script и следующую строку в свой html:

ga('require', 'urlChangeTracker');

Ответ 4

На момент написания здесь, в сентябре 2013 года,
  В Google Analytics появился новый JavaScript API.

После того, как вы включили асинхронный снипп нового "analytics.js" Google, используйте команду send pageview для отслеживания страниц:

  ga('send','pageview');

После безумства pushState используйте эту команду sendview для отслеживания асинхронной навигации. Согласно Документация Google по отслеживанию страниц с помощью Analytics.js, команда send pageview будет волшебным образом читать и отслеживать новое местоположение, заданное pushState,, как оно есть, в момент вызова команды send pageview использует по умолчанию следующие значения (хотя вы можете указать их):

var locationToTrack = window.location.protocol+'//'
  +window.location.hostname 
  +window.location.pathname 
  +window.location.search;

var titleToTrack = document.title;

var pathToTrack = location.pathname+location.search;

Примечание. В стандартном аналитическом фрагменте Google включена первая команда отправки страницы.

Обновление:

Я выполнил отслеживание Google Analytics на своем веб-сайте, как описано выше, однако, похоже, он не отслеживает какие-либо из просмотров страницы pushState.

Я попытаюсь правильно указать имя местоположения, заголовка и страницы в команде send pageview и посмотреть, правильно ли отслеживается GA.

Я отправлю назад результаты, если не забуду.

Ответ 5

У меня также были проблемы с ga ('send', 'pageview');, после использования history.pushState.

Обходной путь - это просто сделать URL явным. га ( 'отправить', '' просмотр страницы "/My-URL)