Содержание
Настройка User ID на сайты и его отслеживание
В данной статье мы рассмотрим несколько способов подключения User-ID и разбор некоторых нюансов при подключении на такие CMS как Bitrix, Wordpress, Diafan и CS-CART. Все методы рабочие на время написания статьи.
Итак, приступим.
Настройка User ID через Google Tag Manager
Для того, чтобы произвести настройку User ID через Google Tag Manager, нужно:
Сделать настройку в Google Analytics;
Google Tag Manager должен быть подключён к Google Analytics;
Настройка в Google Analytics завершена.
Получить User ID, который сгенерировал CMS для пользователей, и передать его значение в Google Analytics можно двумя способами:
- Через cookie на Вашем сайте. Данный способ подойдёт тем, у кого уже происходит передача UID в cookie.
- Через Java Script.
Настройка User ID через cookie с помощью GTM
Самое первое, что необходимо сделать — это проверить, что в cookie есть значения User ID.
Для этого следует зайти на сайт, а затем открыть панель для разработчиков в браузере, нажав на кнопку F12.
На скриншоте мы видим, что сайт записывает уникальный номер посетителя в cookie и называется _ym_uid
После выяснения название UID для Вашего сайта переходим к передачи уникального номера посетителя в GA с помощью GTM. Для этого:
- Создаём переменную:
-
- Переменные → Создать → Конфигурация переменной → Основной файл cookie;
- Указываем название переменной Cookie — UID;
- В поле «Название cookie» указываем название Ваших UID cookie и сохраняем;
- На изображении ниже указан cookie _ym_uid в качестве примера. А Вам следует указать именно название Вашей cookie UID.
Создать или обновить тег Google Analytics.
Рассматриваем его обновление:
- Заходим в тег счётчика Google Analytics;
- Конфигурация тега;
- Дополнительные настройки → Поля, которые необходимо задать → +ПОЛЕ;
- В поле “Название” указываем &uid;
- В поле “Значение” указываем {{Cookie — UID}} и сохраняем.
Настройка User ID через cookie с помощью GTM завершена.
Настройка User ID через Java Script с помощью GTM
Создаём новую переменную:
- Создать переменную User-ID;
- Тип переменной – собственный код Java Script;
- Вставляем код скрипта.
Код Java Script:
function() { var match = document.cookie.match('(?:^|;)\\s*_ga=([^;]*)'); var raw = (match) ? decodeURIComponent(match[1]) : null; if (raw) { match = raw.match(/(\d+\.\d+)$/); } var gacid = (match) ? match[1] : null; if (gacid) { return gacid; } }
Теперь делаем привязку к тегу:
На скриншоте сделано два способа отслеживание User Id, выбирайте тот, который Вам подойдёт.
Проверяем передачу данных в Google Analytics:
Важно: Если данные не будут передаваться в представление User-ID которое вы создали в Google Analytics, то сделайте следуйщие действие:
- Поставить код отслеживание User- ID перед загрузкой DOM.
- Поставить код отслеживание User – ID после загрузки DOM.
Настройка User – ID через счетчик Google Analytics.
Настройка таким методом user id требует на прямую лезть в код сайта и менять настройки, для того чтобы мы смогли отследить данные по user id. Также нам придется менять немножко сам счетчик Google Analytics.
Сейчас мы рассмотрим разные типы настроек таким методом для разных CMS.
Установка User ID на CMS Bitrix
На сайте установлен счетчик аналитики вот и с ним будем работать.
Пример счетчика аналитики:
<!-- Google Analytics ZK--> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-************', 'auto'); ga('require', 'displayfeatures'); ga('send', 'pageview'); </script> <!-- Google Analytics -->
Чтобы нам начать получать данные нужно в этот счетчик внести изменения, добавить PHP – который будет получать USER ID от системы сайта и передавать в Google Analytics.
Код PHP:
<? global $USER; $userId=$USER->GetID(); if(!empty($************)) // Здесь вставляем параметр куки которые мы раньше в этой статьи определяли. { $gacode = "ga('create', 'UA-********', { 'userId': '%s' });"; // ставим номер ресурса GA echo sprintf($gacode, $*********); // ставим параметр куки } else { echo "ga('create', 'UA-126530346-1', 'auto');"; } ?>
Теперь когда сделали код, вставляем его в счетчик Google Analytics. Наш код будет выглядеть вот так:
<!-- Google Analytics --> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); <? global $USER; $userId=$USER->GetID(); if(!empty($BX_USER_ID)) { $gacode = "ga('create', 'UA-126530346-1', { 'userId': '%s' });"; echo sprintf($gacode, $BX_USER_ID); } else { echo "ga('create', 'UA-126530346-1', 'auto');"; } ?> ga('require', 'displayfeatures'); ga('send', 'pageview'); </script> <!-- Google Analytics →
Установка User ID на CMS WordPress и Diafan
Тут также как и с Битриксом нужно поставить PHP код но тут в этих системах код будет другой.
PHP код:
<?php if (isset($********)) // Здесь вставляем параметр куки которые мы раньше в этой статьи определяли. { $gacode = "ga('create', 'UA-**********', { 'userid': '%s' });"; // ставим номер ресурса GA echo sprintf($gacode, $************); // Здесь вставляем параметр куки которые мы раньше в этой статьи определяли. } else { $gacode = "ga('create', 'UA-********');"; // ставим номер ресурса GA echo sprintf($gacode); }?>
После изменений наш счетчик будет иметь вид:
<!-- Google Analytics --> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); <?php if (isset($PHPSESSID)) { $gacode = "ga('create', 'UA-126530346-1', { 'userid': '%s' });"; echo sprintf($gacode, $PHPSESSID); } else { $gacode = "ga('create', 'UA-126530346-1');"; echo sprintf($gacode); }?> ga('require', 'displayfeatures'); ga('send', 'pageview'); </script> <!-- Google Analytics -->
Установка User-ID на CMS CS-CART
Также есть ещё один метод где я смог использовать для определения User ID в CMS CS-CART. Эта CMS использует не простой php код или javascript у них своя система определения команд и функций. Все методы которые описаны раньше не сработали и не работала передача User-ID. Здесь был использован метод подключения через GTM и PHP команды.
Я определил параметры куки и сделал вот такие переменные для передачи user id в Google Analytics:
ga(‘set’, ‘userId’, ‘<?php {$auth.user_id} ?>’);
ga(‘set’, ‘userId’, ‘<?php if (isset($_ym_uid)) {echo “$_ym_uid”} ?>’);
У Вас может быть одна переменная я использую две, так как на некоторых страницах сайта модуль блокирует одну из переменных, а на других страницах – другую переменную. В таком случае чтобі передавались данные, должны использовать две переменные. Теперь приступим к установке. Установку этих переменных будем делать через тег Google Tag Manager:
- Создаем новый тег (Названия произвольное) – Тип тега: Пользовательский HTML
- Вставляем JavaScript код:
<script> ga('set', 'userId', '<?php {$auth.user_id} ?>'); ga('set', 'userId', '<?php if (isset($_ym_uid)) {echo "$_ym_uid"} ?>'); </script>
3) Активация тега – ставим триггер All Pages
Теперь публикуем тег и смотрим данные в Google Analytics:
Как видим данный метод сработал.