Настроить электронную торговлю по ТЗ
Необходимо, чтобы контейнер тегов GTM уже был внедрен на всех страницах сайта basket-parts.ru. Затем необходимо добавить соответствующие теги в интерфейсе GTM, отвечающие за
- отслеживание показов
- отслеживание просмотра карточки товара
- отслеживание добавлений и удалений из корзины
- отслеживание этапов покупки
- отслеживание транзакций
На главной странице basket-parts.ru/ , страницах каталогов (начинающиеся с http://basket-parts.ru/category/) и странице выдачи поиска (начинающиеся с http://basket-parts.ru/search/) должен выполняться код, который отслеживает показы различных товаров. Для этого добавьте тег с html-кодом, который выполняется при загрузке этих страниц, и который пушит в dataLayer данные о показываемых продуктах
<script>
dataLayer.push({
'ecommerce': {
'currencyCode': 'RUB', // установка валюты RUB
'impressions': [ // Этот объект должен содержать данные о всех показываемых продуктах на странице
{
'name': 'Triblend Android T-Shirt', // название товара
'id': '12345', // артикул товара, если есть
'price': '1525', // цена
'brand': 'Google', // бренд
'category': 'Apparel', // категория
'variant': 'Gray', // вариант, если доступно
'list': 'Search Results', // в этот параметр впишите название показываемой категории, либо если это результаты поиска, то Search Results
'position': 1 // Позиция товара в этом списке
},
{ // второй продукт из списка, далее впишите по порядку третий, четвертый и т.д. продукты из списка
'name': 'Donut Friday Scented T-Shirt',
'id': '67890',
'price': '3375',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Black',
'list': 'Search Results',
'position': 2
}]
}
});
</script>
<h2 dir="ltr" style="line-height:1.5999999999999999;margin-top:30pt;margin-bottom:15pt;">Отслеживание просмотра карточки товара</h2>При каждом просмотре карточки товара (например, страница http://basket-parts.ru/kabel-lightning-usb/ ) должен выполняться html-код:
<script>
dataLayer.push({
'ecommerce': {
'detail': {
'actionField': {'list': 'shossejjnye_ciklokrossovye'}, // в параметр list посылайте название категории, откуда произошел просмотр продукта, либо Search Results, если это была страница выдачи поиска, либо оставьте пустым, если перехода со страницы со списком не было, как в случае, когда пользователь напрямую переходит на карточку товара.
'products': [{ // добавление данных о просматриваемом продукте
'name': 'giant_rapid_2_triple_2015',
'id': '12345',
'price': '56200',
'brand': 'Giant',
'category': 'shossejjnye_ciklokrossovye',
'variant': 'Gray'
}]
}
}
});
</script>
<h2 dir="ltr" style="line-height:1.5999999999999999;margin-top:30pt;margin-bottom:15pt;">Отслеживание добавлений и удалений из корзины товаров</h2><h3 dir="ltr" style="line-height:1.92;margin-top:24pt;margin-bottom:12pt;">Добавление продукта в корзину</h3>При каждом клике на кнопку “В корзину” с какого-либо места на сайте (каталог, карточка товара, главная страница), когда при этом продукт действительно добавляется в корзину (а не редиректит на другую страницу),
пример: такие кнопки есть на странице типа “каталог” (http://basket-parts.ru/category/aksessuary-dlya-ap...)
а также с корзины (http://www.basket-parts.ru/cart/ ) при клике на знак “+” добавление единиц товара
должен выполняться html-код
dataLayer.push({
'event': 'addToCart',
'ecommerce': {
'currencyCode': 'RUB',
'add': {
'products': [{ // данные о добавляемых продуктах
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1 // количество товара
}]
}
}
});
<h3 dir="ltr" style="line-height:1.92;margin-top:24pt;margin-bottom:12pt;">Удаление продуктов из корзины</h3>При каждом удалении продуктов из корзины, то есть кликах на “х” и знак убавления единиц товара “ - ”
должен выполняться html-код:
dataLayer.push({
'event': 'removeFromCart',
'ecommerce': {
'remove': { // характеризует удаление
'products': [{ // данные об удаляемом продукте
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1 // количество удаляемых продуктов, равно 1, если нажат убавляющий счетчик количества товара “-” , и равно количеству товара, если товар совсем удалён из корзины
}]
}
}
});
<h2 dir="ltr" style="line-height:1.5999999999999999;margin-top:30pt;margin-bottom:15pt;">Отслеживание этапов покупки</h2>- При просмотре корзины http://www.basket-parts.ru/cart/
Должен выполняться код
<script>
function onCheckout() {
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {'step': 1, 'option': 'viewcart'}, // шаг 1 - просмотр корзины
'products': [{ // Данные о товарах в корзине
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}]
}
}
});
}
</script>
- При кликах на кнопку “Оформить заказ” на корзине товара http://www.basket-parts.ru/cart/
Должен выполняться html-код
<script>
function onCheckout() {
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {'step': 2, 'option': 'checkout'},
'products': [{ // Данные о товарах в корзине
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}]
}
},
});
}
</script>
- При клике на кнопку ОТПРАВИТЬ ЗАКАЗ, когда все нужные поля формы КУПИТЬ В 1 КЛИК заполнены,
Должен выполняться html-код
<script>
function onCheckout() {
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {'step': 1, 'option': 'buy1click'},
'products': [{ // Данные о товаре, покупаемом в 1 клик
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}]
}
},
});
}
</script>
<h2 dir="ltr" style="line-height:1.5999999999999999;margin-top:30pt;margin-bottom:15pt;">Отслеживание транзакций</h2>На спасибо-страницу (страницу подтверждения заказа) надо вызывать html-код с данными о транзакции и о купленных товарах
<script>
dataLayer.push({
'ecommerce': {
'purchase': {
'actionField': {
'id': 'T12345', // ID транзакции, обязательно
'affiliation': 'Online Store', // магазин, необязательный параметр
'revenue': '35.43', // Полная стоимость транзакции, включая доставку
'shipping': '5.99', // доставка
'coupon': 'SUMMER_SALE' // купон, если есть
'dimension4': 'buy1click' // добавьте в этот параметр данные о процессе покупки: buy1click - если купили в 1 клик, buy_ordinary - обычная покупка
},
'products': [{ // Список продуктов в транзакции
'name': 'Triblend Android T-Shirt', // Name или ID обязательны.
'id': '12345',
'price': '15.25', // цена за единицу товара
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1,
'coupon': 'sale'
},
{
'name': 'Donut Friday Scented T-Shirt',
'id': '67890',
'price': '33.75',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Black',
'quantity': 2
}]
}
}
});
</script>
<h1 dir="ltr" style="line-height:1.38;margin-top:20pt;margin-bottom:6pt;">Настройка электронной торговли Яндекс.Метрики</h1>Чтобы электронная коммерция, описанная выше, работала и в Яндекс.Метрике, добавьте в существующий код Яндекс.Метрики для каждой страницы сайта: ecommerce: "dataLayer".
Вот как должен выглядеть код инициализации счетчика Яндекс.Метрики (изменения выделены красным цветом):
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (d, w, c) {
(w[c] = w[c] || []).push(function() {
try {
w.yaCounterXXXX = new Ya.Metrika({
id:XXXX,
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
webvisor:true
ecommerce: "dataLayer"
});
} catch(e) { }
});
var n = d.getElementsByTagName("script")[0],
s = d.createElement("script"),
f = function () { n.parentNode.insertBefore(s, n); };
s.type = "text/javascript";
s.async = true;
s.src = "https://mc.yandex.ru/metrika/watch.js";
if (w.opera == "[object Opera]") {
d.addEventListener("DOMContentLoaded", f, false);
} else { f(); }
})(document, window, "yandex_metrika_callbacks");
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/XXXX" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
Эта тема в архиве. Добавление комментариев к ней отключено.