Слой GTM не выдвигает данные - PullRequest
0 голосов
/ 04 октября 2018

Я работаю над гибридным приложением, в котором страница входа написана на php, а остальное приложение написано на реагировать.Я хочу реализовать Google Analytics для тех же SPA.Я помещаю слой данных в componentWillMount, и мой скрипт gtm добавляется через код php в файл index.php.

Проблема, с которой я сталкиваюсь, возникает впервые, и всякий раз, когда страница переходит от неотреагирующих к реагирующим страницам, мой уровень GTM не отправляет данные в gtm.если переходить на страницы реакции, все работает нормально.

Любая помощь очень ценится.

Спасибо

1 Ответ

0 голосов
/ 04 октября 2018

Проблема, с которой вы сталкиваетесь, очень распространена при использовании SPA.

Позвольте мне привести пример:

  1. При переходе от https://digitalmarketingbloq.com к https://digitalmarketingbloq.com/2018/08/07/how-to-filter-internal-traffic-in-google-analytics-with-google-tag-manager/ Браузер связывается с сервером.Страница отображается и GTM инициируется.
  2. В вашем примере с представлением первой страницы вашего SPA он работает нормально, потому что установлена ​​связь с сервером.Но в SPA происходит переход с одной страницы на другую на стороне клиента.У GTM нет ничего, чтобы действовать.

Как вы можете решить это?

Первый вариант - включить встроенные переменные в разделе «История» (Переменные> Конфигурировать> История): Google Tag Manager - Built-in variables - History

Во-вторых, создатьтриггер (Триггеры> Новый> Изменение истории), который запускает все изменения истории: Google Tag Manager - Trigger history change - all

В режиме предварительного просмотра вы можете проверить, подхватывает ли ваш SPA изменения истории.Узнайте больше информации о переменных здесь: https://support.google.com/tagmanager/answer/7182738?hl=en&ref_topic=7182737#history и о триггере здесь https://support.google.com/tagmanager/answer/7679322?hl=en.

Если это не сработает, вам нужно разработать события «просмотра виртуальной страницы» в SPA, когда переходызавершено.Позвольте мне дать вам больше перспективы.Когда переход со страницы A на страницу B завершен, запускается следующее событие:

  dataLayer.push({
    'virtualPageTitle': 'My Login Screen',
    'virtualPageURL': 'https://www.my-example/login',
    'event': 'VirtualPageview'
  });

Приведенное выше переместит virtualPageTitle и virtualPageURL в dataLayer как и событие VirtualPageview.GTM сможет подобрать это, но вам нужно создать 2 определяемые пользователем переменные virtualPageTitle и virtualPageURL.Триггером будет VirtualPageview.

Надеюсь, это прояснит ситуацию для вас.

...