На сайте Яндекс.Метрики нажимаем кнопку "Добавить счетчик":
В качестве имени счетчика удобно использовать домен магазина. Его же указываем в поле "Адрес сайта".
Поскольку работу над магазином мы будем вести локально (например на localhost), чтобы не вводить метрику в заблуждение нашими действиями, отмечаем опцию "Принимать данные только с указанных адресов" - это позволит метрике учитывать лишь реальных посетителей на рабочем магазине.
В будущем мы обязательно сделаем региональные версии магазинов на поддоменах (например, spb.myshop.ru для Санкт-Петербурга, rov.myshop.ru для Ростова-на-Дону и т.д.) поэтому отмечаем опцию "Включая поддомены" для того, чтобы метрика учитывала посетителей на всех региональных поддоменах.
Обязательно включаем вебвизор, это позволит нам увидеть поведение пользователей на сайте: как водили мышкой, куда кликали, какие клавиши нажимали и т.п.
После этого указываем ваш часовой пояс, принимаем условия пользовательского соглашения и нажимаем кнопку "Создать счетчик":В качестве способа установки счетчика Я.Метрики выбираем "HTML".
Обязательно включаем "Электронную коммерцию", оставив имя контейнера данных в значении по-умолчанию "dataLayer".
В дополнительных настройках выбираем в качестве валюты "RUB - Российский рубль".
Копируем код счетчика и вставляем в самый конец футера, в зависимости от используемого шаблона это файл /theme/footer.tmpl или /theme/_footer.tmpl.
После установки кода счетчика на сайте переходим к созданию цели. Для этого нажимаем "Перейти к настройке целей".
Главная наша цель это конечно же оформление заказа. Именно такую цель мы и создадим. Для этого нажимаем кнопку "Добавить цель":
Цель является не просто главной, а ключевой. Именно по ней можно оценивать эффективность рекламных компаний. И для того, чтобы иметь точную оценку (отношение расходов на рекламу к доходам), а так же возможность использовать автоматические стратегии Яндекс.Директа такие как "Оптимизация конверсий" и "Оптимизация рентабельности", необходимо настроить для цели передачу ценности.
Для этого указываем название цели, например "Заказ", выбираем тип условия "JavaScript-событие" и задаем идентификатор цели, например "ORDER". Завершаем создание цели нажатием кнопки "Добавить цель".
Для того, чтобы оповестить метрику о достижении цели, добавляем следующий код в начало файла /theme/js/live.order.js
function getGoalParams() {
var total_cost = 0;
$('.cart_product').each( function(){
var qty = $(this).find('input.cart_product_qty').val();
qty = qty.replace(/[\D]/g, '');
var price = $(this).find('.cart_product_price').text();
total_cost += price*qty;
});
return {
currency: 'RUB',
order_price: total_cost,
}
}
Функция getGoalParams() высчитывает стоимость заказа (без учета доставки) и возвращаем массив params, необходимый для передачи ценности цели в функцию reachGoal.
Теперь находим в этом же файле код
} else {
$('form[name=order]').append("<input type='hidden' name='delivery' id='delivery' value='" + $('select[name=delivery]').val() + "'/>");
}
disableForm($('.order_table'));
return true;
} else {
И вставляем перед disableForm следующую строку:
ym(15865807, 'reachGoal', 'ORDER', getGoalParams());
Здесь 15865807 - номер счетчика, который необходимо заменить на ваш номер. В итоге должно получиться вот так:
} else {
$('form[name=order]').append("<input type='hidden' name='delivery' id='delivery' value='" + $('select[name=delivery]').val() + "'/>");
}
ym(15865807, 'reachGoal', 'ORDER', getGoalParams());
disableForm($('.order_table'));
return true;
} else {
Теперь на вашем сайте установлен счетчик Яндекс.Метрики и настроена передача ценности ключевой цели. Это дает возможность использовать в Яндекс.Директе автоматические стратегии "Оптимизация конверсий" и "Оптимизация рентабельности", а так же получать оценку не только конверсий, но и рентабельности рекламных компаний.