Я подписан на this :
Но в своем реальном коде я использовал менеджер тегов Google для управления аналитикой Google.Итак, у меня есть только один скрипт в заголовке моего сайта, который принадлежит gtm:
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-P8F58CT');
ga('create', 'UA-124402662-1', 'auto'); // Uncaught ReferenceError: ga is not defined
Как вы можете видеть, я добавил ga('create', 'UA-124402662-1', 'auto')
сразу после этого менеджера тегов Google (так же, как и учебникЯ связал в первой строке моего вопроса).И у меня есть ga('send', 'pageview', newURL);
код, который будет выполняться при изменении страницы с помощью ajax.
Проблема в том, что он выдает: (как я прокомментировал в коде выше)
Uncaught ReferenceError: ga не определено
Как это исправить?Кто-то сказал мне, что вообще не нужно добавлять ga('create', 'UA-124402662-1', 'auto');
, и gtm справится со всем этим. Но в моих тестах:
Когда я открываю свой веб-сайт (домашнюю страницу) и запускаю ga('send', 'pageview', "/adv");
в консоли, в Google Analytics ничего не меняется, и он по-прежнему указываетна главную страницу.
Когда я открываю свой веб-сайт (домашнюю страницу), запускаю ga('create', 'UA-124402662-1', 'auto');
, а затем запускаю ga('send', 'pageview', "/adv");
, тогда аналитика Google изменится на /adv
(больше не домашняя страница).Поэтому я считаю, что ga('create', 'UA-124402662-1', 'auto');
необходимо.Но почему он не определен?