Существующие события Google Analytics и Диспетчер тегов Google
Я внедрил Google Analytics (GA) на свой сайт, и я посылаю несколько пользовательских событий через функцию ga("send", "event", ...);
, и он работает хорошо.
Я экспериментирую с Диспетчером тегов Google (GTM). Я удалил оригинальный отладчик GA, и теперь я использую GTM для ввода тега GA на моем сайте, а просмотры страниц отслеживаются правильно. Что плохо работает, это мои пользовательские события, отправленные функцией ga().
Я заметил, что GA create
имеет переменную имени трекера типа
ga("create", "UA-12345678-1", {name: "gtm0123456789", allowLinker: false});
и расширение отладчика Google Analytics для отчетов Google Chrome Command ignored. Unknown target: undefined
.
Я узнал, что вызов вызова отправки должен включать имя трекера, поэтому он должен выглядеть как ga("gtm0123456789.send", "event", ...);
, но я не хочу изменять все существующие вызовы GA send event
.
Я быстро установил его, установив имя трекера в пустую строку в настройках GTM (Edit Tag -> More Settings -> Advanced Configuration -> ☑ Tracker Name
, оставив текстовое поле пустым), и теперь это работает, но я не думаю, что это такое замечательное решение.
Есть ли какие-либо другие варианты для моих существующих вызовов GA send event
и использования отслеживания событий через GTM?
Ответы
Ответ 1
Существует способ - вы можете переименовать функцию ga в диспетчере тегов (расширенная конфигурация, глобальное имя функции), например. на "real_ga". Затем вы создаете пользовательскую функцию ga на своей собственной странице, которая принимает параметры из ваших вызовов отслеживания событий и передает их в функцию real_ga (поэтому вам нужно изменить имя трекера только в одном месте) или лучше подталкивает их к dataLayer (а затем вы можете использовать значения dataLayer для отслеживания событий в GTM).
Но зачем вам это делать? У вас на самом деле нет проблемы, вы просто плохо себя чувствуете в своем обходном пути. Правильный ответ на этот вопрос, пока он работает, не чувствует себя плохо.
Ответ 2
У меня была аналогичная конфигурация (универсальный тег Analytics в Диспетчере тегов Google), и я хотел запускать события из кнопки при нажатии.
Я использовал комментарии petriq для решения моей проблемы и поэтому хочу добавить свои заметки.
Нормальный код события Universal Analytics представлен в следующем формате:
ga("send", "event", ...);
Вы можете запускать события Universal Analytics из своего кода с именем трекера:
ga("gtmXXXXXXXXXX.send", "event", ...);
Однако имя трекера изменяется в каждой загрузке gtm, поэтому я изменил код следующим образом:
var trackerName = ga.getAll()[0].get('name');
ga(trackerName + '.send', 'event', { eventCategory: 'category1', eventAction: 'action1', eventValue: 0 });
Надеюсь, что это поможет!
Ответ 3
http://www.lunametrics.com/blog/2015/01/21/gtm-existing-tracking/
В своем теге просмотра GTM перейдите в Далее Настройки > Дополнительно Конфигурация. Установите флажок "Имя трекера", но оставьте поле пустой.
Ответ 4
Лучший способ - реализовать все отслеживания с помощью GTM. Это даст вам больше контроля над вашими кодами отслеживания и большей гибкостью при развертывании новых тегов.