Динамический ремаркетинг на базе веб-событий


События с сайта
Изначально базовым источником событий для динамического ремаркетинга в myTarget был сайт рекламодателя. С помощью специального JavaScript кода счетчика Top.Mail.Ru, интегрированного на страницы сайта, информация о событиях передается в myTarget. Для анализа поведения пользователей на сайте используется несколько основных сущностей и параметров, которыми размечаются страницы сайта:

  • product — посещение страницы продукта, передается идентификатор продукта и его стоимость;

  • cart — посещение страницы корзины или добавление товара в корзину (страницы с перечнем выбранных пользователем продуктов), передаются идентификаторы продуктов и их суммарная стоимость;

  • purchase — посещение страницы подтверждения покупки (по факту совершения покупки), передаются идентификаторы продуктов и их суммарная стоимость.
Особенности: Название сущностей (событий/страниц), информация об идентификаторах продуктов и их суммарной стоимости передается в параметрах pagetype, productid и totalvalue соответственно. Параметр productid должен содержать те же идентификаторы, что указаны в продуктовом фиде магазина. Параметр totalvalue всегда должен содержать сумму стоимости всех продуктов. Помимо этого, в служебном параметре list должен быть указан идентификатор фида, к которому относится продукт.
Пример передачи данных (вызов JS-кода на сайте рекламодателя):
<script type="text/javascript">
var _tmr = _tmr || [];
_tmr.push({
type: 'itemView',
productid: '12345',
pagetype: 'product',
totalvalue: '3499.50',
list: '1'
});
</script>
Более подробная информация о динамическом ремаркетинге на основе событий с сайтов и о создании продуктовых фидов (источник данных для формирования рекламных объявлений) — в статье.
Настройка счетчика для динамического ремаркетинга
Если вы собираетесь использовать счетчик для динамического ремаркетинга, пропишите в коде события, данные о которых нужно передавать в myTarget.

Если код счетчика уже установлен, то добавьте к нему специальный код для динамического ремаркетинга:
<!-- Rating@Mail.ru counter dynamic remarketing appendix -->
   <script type="text/javascript">
  	var _tmr = _tmr || [];
  	_tmr.push({
     	type: 'itemView',
     	productid: 'VALUE',
     	pagetype: 'VALUE',
     	list: 'VALUE',
     	totalvalue: 'VALUE'
   	});
   </script>
<!-- // Rating@Mail.ru counter dynamic remarketing appendix -->
Добавьте в код обязательные события (основной источник данных):

  • product – посещение страницы продукта;
  • cart – добавление продуктов в корзину или посещение страницы корзины;
  • purchase – посещение страницы подтверждения покупки (факт совершения покупки).
Мы рекомендуем размещать коды счетчика и динамического ремаркетинга после открывающего тега <body>.

Обязательно размещать код счетчика (обрамлен тегом <!-- Rating@Mail.ru counter --> ) перед кодом динамического ремаркетинга (обрамлен тегом <!-- Rating@Mail.ru counter dynamic remarketing appendix -->).

Пример размещения кодов счетчика и динамического ремаркетинга:
<html>
   <body>
      <!-- Rating@Mail.ru counter -->
     	<script type="text/javascript">
        	var _tmr = window._tmr || (window._tmr = []);
        	_tmr.push({id: "ID счетчика", type: "pageView", start: (new Date()).getTime(), pid: "USER_ID"});
        	(function (d, w, id) {
           	if (d.getElementById(id)) return;
           	var ts = d.createElement("script"); ts.type = "text/javascript"; ts.async = true; ts.id = id;
           	ts.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//top-fwz1.mail.ru/js/code.js";
           	var f = function () {var s = d.getElementsByTagName("script")[0]; s.parentNode.insertBefore(ts, s);};
           	if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); }
        	})(document, window, "topmailru-code");
     	</script>
   	  <noscript><div>
        	<img src="//top-fwz1.mail.ru/counter?id=ID счетчика;js=na" style="border:0;position:absolute;left:-9999px;" alt="" />
     	</div></noscript>
      <!-- //Rating@Mail.ru counter -->

      <!-- Rating@Mail.ru counter dynamic remarketing appendix -->
     	<script type="text/javascript">
        	var _tmr = _tmr || [];
        	_tmr.push({
           	type: 'itemView',
           	productid: 'VALUE',
           	pagetype: 'VALUE',
           	list: 'VALUE',
           	totalvalue: 'VALUE'
        	});
     	</script>
      <!-- // Rating@Mail.ru counter dynamic remarketing appendix -->
   </body>
</html>
В коде счетчика вместо «ID счетчика» должен быть указан идентификатор счетчика, который вы выбрали при загрузке фида.

В коде динамического ремаркетинга вместо "VALUE" для параметров "productid", "pagetype", "list" и "totalvalue" должны быть заданы определённые значения. Они могут задаваться автоматически, например, с помощью некоего инструмента, формирующего код страниц вашего сайта.

Описание параметров динамического ремаркетинга

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

Значение параметра обязательно должно соответствовать идентификатору продукта из фида (элемент "offer", свойство "id"). Именно по этому идентификатору система понимает, какими продуктами интересовался пользователь, чтобы на их основе выбирать продукты из фида для отображения в рекламных объявлениях.

Пример: productid: '123456'

Если на странице представлено несколько товаров, например, на странице корзины (pagetype: 'cart') или странице подтверждения покупки (pagetype: 'purchase'), то их идентификаторы нужно перечислить в массиве (в квадратный скобках через запятую).

Пример: productid: ['123', '456']
pagetype
(обязательный)
Используется для указания типа страницы или раздела сайта, либо события/действия, выполненного пользователем на вашем сайте.

Значения, которые обязательно нужно передавать (без этих данных работа динамического ремаркетинга невозможна):

  • product – просмотр страницы продукта или просмотр информации о конкретном продукте;

  • cart – просмотр страницы корзины, либо добавление пользователем продуктов в корзину без посещения её страницы;

  • purchase – просмотр страницы подтверждения покупки (событие/действие выполнения покупки продуктов).

Пример:
pagetype: 'product'
totalvalue
Используется для указания суммарной стоимости продуктов. Параметр должен содержать сумму цен всех продуктов, указанных в параметре productid — например, сумму цен всех продуктов из корзины. Если задействован только один продукт, то его текущую цену. Имеет смысл передавать этот параметр для pagetype со значениями product, cart и purchase.

Пример: totalvalue: '499.99'
list
(обязательный)
Используется для указания идентификатора фида. В качестве идентификатора фида в данном случае можно использовать любой идентификатор из столбца "id фида" на странице со списком фидов.

Пример: list: '1'

Примеры использования кода динамического ремаркетинга (для сайта с одним фидом)

Страница продукта (событие/действие: просмотр информации о конкретном продукте).

Используйте код динамического ремаркетинга с указанием pagetype: 'product', при отображении пользователю продукта, которым он заинтересовался (целенаправленно смотрел информацию о конкретном продукте).

Если ваш сайт позволяет просматривать информацию о разных продуктах без перезагрузки страницы, то вы можете динамически обновлять информацию о продукте, которым интересуется посетитель — последовательно выполняйте вызовы кода динамического ремаркетинга с соответствующими значениями параметров productid и totalvalue.
<script type="text/javascript">
   var _tmr = _tmr || [];
   _tmr.push({
      type: 'itemView',
  	productid: '12345',
  	pagetype: 'product', 
  	totalvalue: '1000.89',
  	list: '1'
   });
</script>
Корзина (событие/действие: просмотр страницы корзины, добавление товара в корзину).

Используете код динамического ремаркетинга с указанием pagetype: 'cart', если пользователь перешел на страницу корзины и она не пуста, либо пользователь добавил какие-то продукты в корзину без перехода в неё (без открытия страницы самой корзины). Выполняйте вызовы кода динамического ремаркетинга с указанием ID всех продуктов, находящихся в текущий момент в корзине.
<script type="text/javascript">
   var _tmr = _tmr || [];
  	_tmr.push({
      type: 'itemView',
  	productid: ['1234','5678','9012'],
  	pagetype: 'cart', 
  	totalvalue: '15000.45',
  	list: '1'
    });
</script>
Страница покупки (событие/действие: выполнение покупки).

Используйте код динамического ремаркетинга с указанием pagetype: 'purchase', если пользователь завершил оформление заказа. Выполняйте вызовы кода динамического ремаркетинга с указанием ID всех продуктов, приобретенных пользователем.
<script type="text/javascript">
   var _tmr = _tmr || [];
  	_tmr.push({
      type: 'itemView',
  	productid: ['1234','5678','9012'],
  	pagetype: 'purchase', 
  	totalvalue: '15000.45',
  	list: '1'
   });
</script>

Подключение кода динамического ремаркетинга через Google Tag Manager

Создание контейнера

После создания аккаунта в Диспетчере тегов Google необходимо создать контейнер. Контейнер содержит все теги конкретного веб-сайта. Поэтому необходимо задать контейнеру соответствующее название. Например, контейнер для сайта myperfectsite.com можно назвать "myperfectsite.com".

Чтобы создать новый контейнер:
1. На главной странице в «Диспетчере тегов Google» в списке аккаунтов выберите нужный аккаунт и нажмите на кнопку «...». Затем нажмите «Создать контейнер».
2. Введите название контейнера, выберите вариант «Веб-сайт» в разделе «Целевая платформа» и нажмите кнопку «Создать».
3. Если контейнер создается вместе с аккаунтом, то на главной странице нажмите кнопку «Создать аккаунт» и на следующей странице добавьте аккаунт и создайте контейнер

Размещение контейнера

После создания контейнера появится модальное окно содержащее JS-код контейнера. Этот код необходимо разместить на каждой странице сайта. Как правильно его разместить, будет указано в модальном окне.

Добавление тегов и триггеров

Последовательность действий для добавления нового тега GTM:

1. На главной странице на вкладке «Обзор» нажмите на кнопку «Добавить новый тег».
2. На следующей странице введите корректное название тега и нажмите на любое место в области страницы «Конфигурация тега».
3. Затем выберите тип тега «Пользовательский HTML».
4. В следующем окне добавьте JS-код счетчика ТОП@Mail.Ru и JS-код для динамического ремаркетинга.
5. В расширенных настройках тега в пункте «Настройка активации» тега выберите «Без ограничений».
Обратите внимание!
В коде динамического ремаркетинга вместо "VALUE" для параметров "productid", "pagetype", "list" и "totalvalue" должны быть заданы определённые значения. Они могут задаваться автоматически, например, с помощью некоего инструмента, формирующего код страниц вашего сайта.
Для того, чтобы созданный ранее тег сработал, необходимо создать триггер, активация которого будет вызывать JS-код динамического ремаркетинга, который мы добавили на предыдущих шагах при добавлении нового тега.

Для этого необходимо последовательно выполнить следующие шаги:
1. Кликнуть в любом месте в области «Триггеры»;
2. Добавить новый триггер, нажав на плюсик:
3. Ввести осмысленное имя триггера и выбрать тип триггера «Окно загружено».
Далее необходимо определить, при наступлении какого или каких событий нужно активировать этот триггер. Например, мы хотим, чтобы этот триггер активировался при посещении корзины на сайте. Для этого необходимо:

  1. Кликнуть в любом месте области «Настройка триггера»;
  2. В группе чекбоксов «Условия активации триггера» выбрать «Некоторые события "Окно загружено"»;
  3. В самом первом выпадающем списке слева выбрать пункт "Page URL", затем «Содержит» и, например, /cart;
  4. Сохранить изменения, нажав на кнопку "Сохранить".
В данном конкретном случае /cart как часть URL выбран только как пример.

Публикация изменений

После добавления тегов GTM и соответствующих им триггеров необходимо опубликовать внесенные изменения. Для этого на вкладке «Рабочая область» Диспетчера тегов Google нужно нажать на кнопку «Отправить».
На следующей странице нужно ввести название публикуемой версии и краткое описание внесенных изменений. Затем нажать на кнопку «Опубликовать».

Особенности вызова кода динамического ремаркетинга

В зависимости от действий пользователя на сайте, код динамического ремаркетинга может быть вызван неограниченное количество раз без перезагрузки страницы, но все вызовы должны быть сделаны только после вызова основного кода счетчика Top.Mail.Ru.

При вызове кода в глобальной области видимости для объявления объекта _tmr достаточно указать его название, например:
<input type="button" id="addToCart" value="Добавить в корзину">
<script type="text/javascript">
   jQuery('#addToCart').on('click', function() {
      var _tmr = _tmr || [];
  	_tmr.push({
     	type: 'itemView',
     	productid: '1234',
     	pagetype: 'cart',
     	list: '1'
  	});
  	return true;
   });
</script>
Если же код вызывается внутри какой-либо JS-функции или в ином месте, то может потребоваться объявить объект _tmr как метод глобального объекта window, например:
<input type="button" onclick="var _tmr = window._tmr || (window._tmr = []); _tmr.push({ type:'itemView', productid:'1234', pagetype:'cart', list:'1' }); return true;" value="Добавить в корзину">
Примеры выше демонстрируют вариант реализации отправки данных в myTarget о добавлении товара в корзину при нажатии пользователем на кнопку «Добавить в корзину».
Вам помогла эта статья?
Да
Нет