Goals
Установка целей для Яндекс.Метрики
Общие положения
Первоначально ознакомьтесь с документацией на странице https://yandex.ru/support/metrika/general/goal-js-event.html#js-event
Документация для новой версии кода Метрики (с 6.12.2018) доступна на странице https://yandex.ru/support/metrika/objects/reachgoal.html
Далее берем пример нижеуказанного кода, правим его и добавляем либо в инфоблок headScripts или в тот же инфоблок, где подключается метрика, например в sitefootinfo4, footer_copyright.
Если в коде самого счетчика Метрики указано ym(ХХХХХХХХ, ...), значит у Вас новая версия кода Метрики и нужно использовать:
<script>
$(document).ready(function(){
$(document).on("click", "#celector", function() {
ym(ХХХХХХХХ,'reachGoal','НАЗВАНИЕ_СОБЫТИЯ');
});
});
</script>
или
<script>
$(document).ready(function(){
$(document).on("click", "#celector", function() {
ym(ХХХХХХХХ,'reachGoal','НАЗВАНИЕ_СОБЫТИЯ');
});
});
</script>
Если в коде самого счетчика Метрики указано yaCounterХХХХХХХХ, значит у Вас предыдущая версия кода Метрики и нужно использовать:
<script>
$(document).ready(function(){
$(document).on("submit", "#celector", function() {
yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
});
});
</script>
или
<script>
$(document).ready(function(){
$(document).on("click", "#celector", function() {
yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
});
});
</script>
Указываем submit, если нужно вызвать событие при отправке формы. Например, формы обратной связи (т.е. где заполняются поля). В этом случае в качестве "#celector" указываем имя/id этой формы. Id у этой формы - wFeedbackForm
Увеличенный фрагмент исходного кода.
Если указать click, тогда цель будет срабатывать при каждом клике на кнопку. В таком случае в качестве "#celector" указываем ".класс" или "#id" ссылки. Либо, если того и того нет, то name (в квадратных скобках [name='button'])
На месте ХХХХХХХХ в коде цели нужно указать индивидуальный номер счетчика метрики.
Названия самих целей - произвольные, их вы должны придумать самостоятельно.
Вот пример итогового кода для добавления цели на форму обратной связи:
<script>
$(document).ready(function(){
$(document).on("submit", "#wFeedbackForm", function() {
ym(ХХХХХХХХ,'reachGoal','Feedback');
});
});
</script>
Примеры кодов
Формы
Форма обратной связи
<script>
$(document).ready(function(){
$(document).on("submit", "#wFeedbackForm", function() {
ym(ХХХХХХХХ,'reachGoal','Feedback');
});
});
</script>
Форма заказа обратного звонка
<script>
$(document).ready(function(){
$(document).on("submit", "#callOrderForm", function() {
ym(ХХХХХХХХ,'reachGoal','callOrder');
});
});
</script>
Корзина и оформление заказа
Нажать на кнопку “положить в корзину”
<script>
$(document).ready(function(){
$('.addToBasketLink').on("click", function() {
ym(ХХХХХХХХ, 'reachGoal', 'addToBasket');
});
});
</script>
Нажатие на кнопку “посмотреть цены” в каталоге
$(document).on('click', '.priceButton a', function(event) {
createDeferredSubmitter(
event,
function (link) {
ym(ХХХХХХХХ, 'reachGoal', 'posmotret_ceny');
},
function (link) {
link.click();
},
this
);
});
Нажать на кнопку “Оформить заказ”
<script>
$(document).ready(function(){
$(document).on("click", ".cartSendOrderButton", function() {
ym(ХХХХХХХХ, 'reachGoal', 'SendOrder');
});
});
Отправка заказа (переход на страницу /cart?ordercomplete)
Данный код необходимо размещать в инфоблоке cartSendOrderBottom
<script>
$(window).load(function() {
var ordercomplete = window.location.search;
var page = window.location.pathname;
if (page == '/cart' && ordercomplete == '?ordercomplete') {
ym(ХХХХХХХХ, 'reachGoal', 'OrderComplete');
};
});
</script>
Vin-запрос
Отправка Vin-запроса
<script>
$(document).ready(function(){
$(".vinqu-step-navigate-btn-flex [href='#info']").on("click", function() {
ym(ХХХХХХХХ,'reachGoal','Vin');
});
});
</script>
Регистрация
Чтобы установить цель на регистрацию розничных и оптовых клиентов, на стороне платформы указывать ничего не требуется. Вам нужно на стороне Метрики задать цель на достижение определенного url. Т.е. если клиент попал на определенный url, то цель достигнута.