Открыть главное меню

Goals: различия между версиями

м
 
(не показано 8 промежуточных версий 1 участника)
Строка 1: Строка 1:
 
Установка целей для Яндекс.Метрики
 
Установка целей для Яндекс.Метрики
 +
=Общие положения=
  
 +
Первоначально ознакомьтесь с документацией на странице https://yandex.ru/support/metrika/general/goal-js-event.html#js-event<br>
 +
Документация для новой версии кода Метрики (с 6.12.2018) доступна на странице https://yandex.ru/support/metrika/objects/reachgoal.html<br>Далее берем пример нижеуказанного кода, правим его и добавляем либо в инфоблок headScripts или в тот же инфоблок, где подключается метрика, например в sitefootinfo4, footer_copyright.
 +
<br />
 +
Если в коде самого счетчика Метрики указано  ym(ХХХХХХХХ, ...), значит у Вас новая версия кода Метрики и нужно использовать:
  
= Общие положения =
+
<source lang="javascript">
 
 
Первоначально ознакомьтесь с документацией на странице https://yandex.ru/support/metrika/general/goal-js-event.html#js-event<br>
 
Документация для новой версии кода Метрики (с 6.12.2018) доступна на странице https://yandex.ru/support/metrika/objects/reachgoal.html<br>
 
Далее берем пример нижеуказанного кода, правим его и добавляем либо в инфоблок headScripts или в тот же инфоблок, где подключается метрика, например в sitefootinfo4, footer_copyright.<p>
 
<source lang=javascript>
 
 
<script>
 
<script>
$(document).ready(function(){
+
  $(document).ready(function(){
$(document).on("submit", "#celector", function() {
+
    $(document).on("submit", "#celector", function() {
yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
+
    ym(ХХХХХХХХ,'reachGoal','НАЗВАНИЕ_СОБЫТИЯ');
});
+
    });
});
+
  });
 
</script>
 
</script>
 
</source>
 
</source>
 +
 
или
 
или
<source lang=javascript>
+
 
 +
<source lang="javascript">
 
<script>
 
<script>
$(document).ready(function(){
+
  $(document).ready(function(){
$(document).on("click", "#celector", function() {
+
    $(document).on("click", "#celector", function() {
yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
+
    ym(ХХХХХХХХ,'reachGoal','НАЗВАНИЕ_СОБЫТИЯ');
});
+
    });
});
+
  });
 
</script>
 
</script>
 
</source>
 
</source>
Указываем submit, если нужно вызвать событие при отправке формы. Например, формы регистрации (т.е. где заполняются поля). В таком случае в качестве "#celector" указываем имя/id этой формы.
 
Вот пример кода формы <source lang=javascript><form method="post" action="/?page=reg&switch_to_opt" NAME="form1" id="formRegWholesale"></source> поэтому будет "#formRegWholesale".
 
 
[[Файл:Выделение 999(019).jpg|900px]]
 
<br>
 
 
Увеличенный фрагмент исходного кода.<br>
 
 
[[Файл:Выделение_999(020).jpg]]
 
<br>
 
  
Если указать click, тогда цель будет срабатывать при каждом клике на кнопку. В таком случае в качестве "#celector" указываем ".класс" или "#id" ссылки. Либо, если того и того нет, то name (в квадратных скобках [name='button'])
+
Если в коде самого счетчика Метрики указано  yaCounterХХХХХХХХ, значит у Вас предыдущая версия кода Метрики и нужно использовать:
  
В коде вызывается метод объекта yaCounterХХХХХХХХ, где ХХХХХХХХ - индивидуальный номер счетчика клиента. Название объекта везде на сайте должно совпадать.
+
<source lang="javascript">
Создание объекта метрики выглядит примерно так:
 
<source lang=javascript>
 
w.yaCounterХХХХХХХХ = new Ya.Metrika({id:ХХХХХХХХ,
 
webvisor:true,
 
clickmap:true,
 
trackLinks:true,
 
accurateTrackBounce:true,params:window.yaParams||{ }});
 
</source>
 
Этот код можно поискать по странице и узнать название объекта. Названия целей для кнопок произвольные, их вы должны придумать самостоятельно. Вот пример итогового кода для добавления
 
<source lang=javascript>
 
 
<script>
 
<script>
    $(document).ready(function(){
+
$(document).ready(function(){
          $(document).on("submit", "#formRegWholesale", function() {
+
  $(document).on("submit", "#celector", function() {
          yaCounterХХХХХХХХХ.reachGoal('REGISTER_OPT');
+
    yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
          });
+
  });
    });
+
});
 
</script>
 
</script>
 
</source>
 
</source>
Если необходимо навесить цель на отправку вин-запроса (на странице vinquery кнопка "Отправить запрос"), то код будет немного другой, т.к. у кнопки нет id/имени формы и она отправлется ajax'ом. Код будет вида:
+
 
<source lang=javascript>
+
или
 +
 
 +
<source lang="javascript">
 
<script>
 
<script>
$(document).ready(function(){
+
  $(document).ready(function(){
  $('.wVinquAdd input.submit-query').on("click", function() {
+
  $(document).on("click", "#celector", function() {
  yaCounterХХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
+
    yaCounterХХХХХХХХ.reachGoal('НАЗВАНИЕ_СОБЫТИЯ');
 +
  });
 
   });
 
   });
});
+
</script>
</script>
 
 
</source>
 
</source>
 +
[[Файл:Id формы обратной связи.png|мини|344x344пкс|id формы обратной связи]]
 +
Указываем submit, если нужно вызвать событие при отправке формы. Например, формы обратной связи (т.е. где заполняются поля). В этом случае в качестве "#celector" указываем имя/id этой формы. Id у этой формы - wFeedbackForm (показано на рисунке).
  
= Примеры кодов =
+
Если указать click, тогда цель будет срабатывать при каждом клике на кнопку. В таком случае в качестве "#celector" указываем ".класс" или "#id" ссылки. Либо, если того и того нет, то name (в квадратных скобках [name='button'])           
  
== Формы ==
+
На месте ХХХХХХХХ в коде цели нужно указать индивидуальный номер счетчика метрики.<br>Названия самих целей - произвольные, их вы должны придумать самостоятельно.
  
=== Форма регистрации розница ===
+
Вот пример итогового кода для добавления цели на форму обратной связи:
 
+
<source lang="javascript">
<source lang=javascript>
+
<script>
$(document).on("submit", "#formRegRetail", function() {
+
  $(document).ready(function(){
  yaCounterХХХХХХХХ.reachGoal('RegRetail');
+
    $(document).on("submit", "#wFeedbackForm", function() {
  });
+
      ym(ХХХХХХХХ,'reachGoal','Feedback');
 +
    });
 +
  });
 +
</script>
 
</source>
 
</source>
 +
<br />
  
=== Форма регистрации ОПТ ===
+
=Примеры кодов=
  
<source lang=javascript>
+
==Формы==
  $(document).on("submit", "#formRegWholesale", function() {
 
  yaCounterХХХХХХХХ.reachGoal('RegWholesale');
 
  });
 
</source>
 
  
=== Форма обратной связи ===
+
===Форма обратной связи===
  
<source lang=javascript>
+
<source lang="javascript">
$(document).on("submit", "#wFeedbackForm", function() {
+
<script>
  yaCounterХХХХХХХХ.reachGoal('Feedback');
+
$(document).ready(function(){
 +
  $(document).on("submit", "#wFeedbackForm", function() {
 +
    ym(ХХХХХХХХ,'reachGoal','Feedback');
 +
  });
 
  });
 
  });
 +
</script>
 
</source>
 
</source>
  
=== Форма заказа обратного звонка ===
+
===Форма заказа обратного звонка===
  
<source lang=javascript>
+
<source lang="javascript">
$(document).on("submit", "#callOrderForm", function() {
+
<script>
yaCounterХХХХХХХХ.reachGoal('callOrder');
+
$(document).ready(function(){
 +
  $(document).on("submit", "#callOrderForm", function() {
 +
    ym(ХХХХХХХХ,'reachGoal','callOrder');
 +
  });
 
  });
 
  });
 +
</script>
 
</source>
 
</source>
  
== Корзина и оформление заказа ==
+
==Корзина и оформление заказа==
  
=== Нажать на кнопку “положить в корзину” ===
+
===Нажать на кнопку “положить в корзину”===
  
<source lang=javascript>
+
<source lang="javascript">
   $(document).on('click', '.addToBasketLink', function(event) {
+
<script>
  yaCounterХХХХХХХХ.reachGoal('addToBasket');
+
   $(document).ready(function(){
 +
    $('.addToBasketLink').on("click", function() {
 +
    ym(ХХХХХХХХ, 'reachGoal', 'addToBasket');
 +
    });
 
   });
 
   });
 +
</script>
 
</source>
 
</source>
  
=== Нажатие на кнопку “посмотреть цены” в каталоге ===
+
===Нажатие на кнопку “посмотреть цены” в каталоге===
  
<source lang=javascript>
+
<source lang="javascript">
$(document).on('click', '.priceButton a', function(event) {
+
<script>
     createDeferredSubmitter(
+
  $(document).ready(function(){
      event,
+
     $('.priceButton').on("click", function() {
      function (link) {
+
      ym(ХХХХХХХХ, 'reachGoal', 'posmotret_ceny');
        yaCounterXXXXXXXX.reachGoal('posmotret_ceny');
+
    });
      },
 
      function (link) {
 
        link.click();
 
      },
 
      this
 
    );
 
 
   });
 
   });
 +
</script>
 
</source>
 
</source>
  
=== Нажать на кнопку “Оформить заказ” ===
+
===Нажать на кнопку “Оформить заказ”===
  
<source lang=javascript>
+
<source lang="javascript">
   $(document).on('click', '.orderCheckNoReturn, .cartSendOrderButton', function(event) {
+
<script>
   yaCounterXXXXXXXX.reachGoal('SendOrder');
+
$(document).ready(function(){
 +
   $(document).on("click", ".cartSendOrderButton", function() {
 +
   ym(ХХХХХХХХ, 'reachGoal', 'SendOrder');
 
   });
 
   });
 +
});
 +
</script>
 
</source>
 
</source>
  
=== Отправка заказа (переход на страницу /cart?ordercomplete) ===
+
===Отправка заказа (переход на страницу /cart?ordercomplete)===
 
Данный код необходимо размещать в инфоблоке cartSendOrderBottom
 
Данный код необходимо размещать в инфоблоке cartSendOrderBottom
  
<source lang=javascript>
+
<source lang="javascript">
 +
<script>
 
$(window).load(function() {
 
$(window).load(function() {
 
         var ordercomplete = window.location.search;
 
         var ordercomplete = window.location.search;
 
         var page = window.location.pathname;
 
         var page = window.location.pathname;
 
         if (page == '/cart' && ordercomplete == '?ordercomplete') {
 
         if (page == '/cart' && ordercomplete == '?ordercomplete') {
            yaCounterXXXXXXXX.reachGoal(ordercomplete);
+
          ym(ХХХХХХХХ, 'reachGoal', 'OrderComplete');
 
         };
 
         };
    });
+
});
 +
</script>
 +
</source>
 +
 
 +
==Vin-запрос==
 +
===Отправка Vin-запроса===
 +
<source lang="javascript">
 +
<script>
 +
$(document).ready(function(){
 +
  $(".vinqu-step-navigate-btn-flex [href='#info']").on("click", function() {
 +
    ym(ХХХХХХХХ,'reachGoal','Vin');
 +
  });
 +
});
 +
</script>
 
</source>
 
</source>
 +
 +
==Регистрация==
 +
Чтобы установить цель на регистрацию розничных и оптовых клиентов, на стороне платформы указывать ничего не требуется. Вам нужно на стороне Метрики задать цель на достижение определенного url. Т.е. если клиент попал на определенный url, то цель достигнута.
 +
[[Файл:Цель для регистрации.png|центр|мини|589x589пкс|Цель для регистрации]]
 +
 +
Аналогично можно сделать для регистрации оптовиков. При этом правило должно быть "url: совпадает" = "reg/?registrationSuccessful".

Текущая версия на 11:18, 3 августа 2021

Установка целей для Яндекс.Метрики

Общие положения

Первоначально ознакомьтесь с документацией на странице 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("submit", "#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>
id формы обратной связи

Указываем 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>

Нажатие на кнопку “посмотреть цены” в каталоге

<script>
  $(document).ready(function(){
    $('.priceButton').on("click", function() {
       ym(ХХХХХХХХ, 'reachGoal', 'posmotret_ceny');
    });
  });
</script>

Нажать на кнопку “Оформить заказ”

<script>
$(document).ready(function(){
  $(document).on("click", ".cartSendOrderButton", function() {
   ym(ХХХХХХХХ, 'reachGoal', 'SendOrder');
  });
});
</script>

Отправка заказа (переход на страницу /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, то цель достигнута.

Цель для регистрации

Аналогично можно сделать для регистрации оптовиков. При этом правило должно быть "url: совпадает" = "reg/?registrationSuccessful".