GP Container

В этом руководстве рассказывается, как установить GP Container на вашем сайте.

1. Установка контейнера

Для установки контейнера необходимо на все страницы сайта разместить код, сразу после открывающегося тега body:

<script async src="https://static.terratraf.io/engine/GP.js"></script>
<script>
    window.generalPixel = window.generalPixel || [];
    window.generalPixel.push({type:'GPID', id:'10001CE3'})
</script>

🚧

Важно

Используйте свой идентификатор контейнера, 10001CE3 - тестовый идентификатор.

Асинхронный вызов

Иногда может возникать ситуация, когда целевые действия на странице совершаются до загрузки контейнера и нужно иметь возможность вызвать метод контейнера (передать информацию о совершаемых событиях), до того момента как код контейнера будет загружен. Для этого можно использовать событие загрузки контейнера.

В примере ниже добавляет отслеживание события generalPixelInited которое означает загрузку контейнера. И при загрузке контейнера вызывается событие a1. Таким образом можно отследить события совершенные до загрузки контейнера.

document.addEventListener("generalPixelInited", function(event) {
   generalPixel.postClick('a1','generalPixelInited')
});

Передача событий с сайта

Иногда возникает необходимость в передаче событий возникающих на сайте. Типичными примерами таких событий могут быть нажатие на кнопки на сайте (например положить в корзину), скачивание файлов, прочие взаимодействия с сайтом которые важны для отслеживания.

Так же вместе с событием может возникнуть необходимость передачи данных, для этого существует опциональный второй параметр. Как в примере ниже при вызове Second action, могут быть переданы данные в примере представленные плейсхолдером {DATA_TO_SEND}.

<script>
   //First action
   generalPixel.postClick('a1');
   //Second action
   generalPixel.postClick('a2', '{DATA_TO_SEND}');
</script>

Пример работы контейнера можно посмотреть по ссылке

Установка через GTM

Если код контейнера устанавливается через GTM необходимо загружать код контейнера для каждой страницы в момент загрузки страницы. Для этого мы рекомендуем создать тэг и установить триггер срабатывания - "All Pages".

Для вызова целевых действий, мы рекомендуем создавать отдельные теги с другими триггерами.

2. Объекты создаваемые контейнером

Контейнер в процессе своей работы создает объект generalPixel, в этом объекте размещаются все данные, которыми оперирует контейнер.

Идентификатор пользователя

Опционально можно присваивать посетителям Вашего сайта собственные идентификаторы и передавать их в контейнер как UserID. Передача этого идентификатора ни как не влияет на автоматически генерируемые отчеты, но может в дальнейшем помочь расширить аналитику для Вашего сайта.

3. Вызов матчинга для внешних провайдеров

Для сбора как можно большего кол-ва данных о посетителях сайта контейнер может вызывать cookie sync со внешними провайдерами данных.

Для защиты от сбора провайдерами данных о посещаемых страницах, cookie sync вызывается со специальной служебной страницы, таким образом не смотря на то, что происходит синхронизация данных, внешние провайдеры данных не знают какие страницы посещает пользователь и на каком сайте.

4. Отказ от сбора данных контейнером

Для отказа от сбора данных разработан метод tfData.optOut. Чтобы данные не собирались, необходимо указать tfData.optOut=true.

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

button.addEventListener('click' ,function() {
    window.tfData.optOut = !window.tfData.optOut
  });