Получив данные об источнике трафика на сайт, Вы можете построить логику работы Google Tag Manager в зависимости от этого значения.
Переменная referrer (если работать с JavaScript, то document.referrer, ниже я буду указывать просто referrer если не понадобится дополнительное уточнение) содержит данные об URL- страницы, с которой выполнен переход на текущую. Извлекая данные из этой переменной можно выполнить необходимые действия у себя на сайте, например, выполнить динамическую подмену контента на странице. Для того, чтобы получить значение из referrer в Google Tag Manager нужно создать собственную переменную, которая вернет доменное имя сайта источника переход на ваш сайт (как пример того, что может содержаться в referrer).
Более простоя способ это использование переменной Google Tag Manager типа Источник ссылки HTTP или HTTP Referrer. Ниже разберем оба варианта.
Разбираем referrer с помощью JavaScript
Перейдите к созданию переменной, укажите тип Собственный код JavaScript. В поле ввода кода необходимо добавить следующее содержание:
1 2 3 4 5 6 7 8 9 10 11 |
function(){ var o = 'ВАШ_ДОМЕН'; var s = false; var r = document.referrer; if( r.indexOf(o) < 0 ){ var url = document.createElement('a'); url.href = r; s = ( document.referrer == '' ) ? 'direct' : url.hostname ; } return s; } |
Небольшое пояснение к коду. Он проверяет совпадает ли доменное имя источника перехода (содержится в document.referrer) с доменным именем сайта. Если совпадение установлено, то это внутренний переход и он нам не интересен, переменная принимает значение FALSE. Если имена доменов отличаются, то переменной присваивается значение direct для прямого перехода или имя домена источника перехода. В переменной о необходимо указать доменное имя вашего сайта. Ниже результаты работы скрипта:
— переход со стороннего сайта
— прямой переход на сайт
— внутренний переход
Обратите внимание, что возвращаемые данные доступны в момент перехода на сайт, при посещении второй и последующих страниц все переходы станут внутренними. Если нужно зафиксировать источник на время текущей сессии используйте, как вариант, возможность хранения данных в cookie .
document.referrer в Google Tag Manager
Для того, чтобы получить необходимые значения из referrer в Google Tag Manager достаточно создать переменную типа источник ссылки HTTP:
В поле Тип компонента выбрать необходимую часть из URL и ее значение будет присвоено созданной переменной, которую можно будет использовать для работы.