Настроить электронную торговлю по ТЗ

Бюджет: Не указан
<h1 dir="ltr" style="line-height:1.38;margin-top:20pt;margin-bottom:6pt;text-align: center;">ТЗ на расширенную электронную торговлю для basket-parts.ru с использованием Google Tag Manager для Google Analytics и Яндекс.Метрики</h1>

Необходимо, чтобы контейнер тегов GTM уже был внедрен на всех страницах сайта basket-parts.ru. Затем необходимо добавить соответствующие теги в интерфейсе GTM, отвечающие за

<h2 dir="ltr" style="line-height:1.5999999999999999;margin-top:30pt;margin-bottom:15pt;">Отслеживание показов</h2>

На главной странице 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>

Должен выполняться код

<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>


Должен выполняться 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>&lt;div&gt;&lt;img src="https://mc.yandex.ru/watch/XXXX" style="position:absolute; left:-9999px;" alt="" /&gt;&lt;/div&gt;</noscript>

<!-- /Yandex.Metrika counter -->



    Эта тема в архиве. Добавление комментариев к ней отключено.