К содержанию

Цели яндекс метрика для ajax formit

Всем привет, может кто уже делал цели на успешную отправку формы для яндекс метрики. Или подскажите как сделать.

Есть такой скрипт на успешную отправку.
<script>
$(document).on('af_complete', function(event, response) {
    if (response.success) {
        $('#myModalbuy2').modal('hide');
    }
 });
</script>
Сергей
Сергей
16 мая 2016, 12:20
modx.pro
15 120
Реклама

Комментарии: 30

mngatoff
mngatoff Проверенный
16 мая 2016, 17:09
<form onsubmit="yaCounterXXXXXXXX.reachGoal('metka'); return">
    mngatoff
    mngatoff Проверенный
    16 мая 2016, 17:10
    <script>
    $(document).on('af_complete', function(event, response) {
        if (response.success) {
            yaCounterXXXXXXXX.reachGoal('metka'); return
        }
     });
    </script>
      Сергей
      Сергей Проверенный
      16 мая 2016, 17:32
      Вот так?
      <script>
      $(document).on('af_complete', function(event, response) {
          if (response.success) {
              $('#myModalbuy2').modal('hide');
      	yaCounterXXXXXXXX.reachGoal('metka'); return
          }
       });
      </script>
        Виктор
        Виктор Старожил
        17 мая 2016, 14:10
        $(document).on('af_complete', function(event, response) {
        	if (response.success) {
            		var form = response.form;
           		if (form.attr('id') == 'myModalbuy2') {
        			form.attr('id').modal('hide');
        			yaCounterXXXXXXXX.reachGoal('metka'); return
        		}
                }
        });
          Сергей
          Сергей Проверенный
          17 мая 2016, 14:50
          Буду пробовать, заранее спасибо!
          Сергей
          Сергей Проверенный
          17 мая 2016, 16:14
          Вообщем при таком варианте
          1. Форма не закрывается
          2. Лид учитывается, если даже форма не отправлена
          Сергей
          Сергей Проверенный
          17 мая 2016, 16:15
          Мне кажется где то ошибка.
            mngatoff
            mngatoff Проверенный
            17 мая 2016, 16:23
            во-первых return можно убрать. А скорее всего и нужно. А во-вторых, не может лид учитываться, если в ответе нет success
              mngatoff
              mngatoff Проверенный
              17 мая 2016, 16:24
              попробуй проверять вот так
              if (response.success === true)
                Сергей
                Сергей Проверенный
                17 мая 2016, 16:30
                Так?
                <script>
                $(document).on('af_complete', function(event, response) {
                    if (response.success === true) {
                        yaCounter20822521.reachGoal('myModalbuy_lid');
                    }
                 });
                </script>
                $('#myModalbuy2').modal('hide');
                — это куда?
            Виктор Лобанов
            Виктор Лобанов Старожил
            18 мая 2016, 02:42
            попробуйте дописать в &successMessage=``
            [[!AjaxForm?
                 &snippet=`FormIt`
                 &successMessage=`Сообщение успешно отправлено
                 <script>yaCounterXXXXXXXX.reachGoal('target');</script>`
            ]]
              Сергей
              Сергей Проверенный
              18 мая 2016, 09:49
              Проверил через ....?_ym_debug=1… и консоль, вроде все супер. Спасибо за такое простое решение, как на 100% буду уверен в работе данного способа, отпишусь. Заранее спасибо!
              Сергей
              Сергей Проверенный
              23 мая 2016, 17:32
              Вообщем подвожу итог.
              Самый простой и удобный способ сделать цель на успешную отправку формы, это добавить
              &successMessage=`Сообщение успешно отправлено
                   <script>yaCounterXXXXXXX.reachGoal('myModalbuy_lid', goalParams, goalCallback);</script>`
              Так-же попробовал добавить параметры цены цели
              <script type="text/javascript">
                      var goalParams1 = {order_price: 999, currency: "RUB"};
                      function goalCallback1 () {
                          console.log('запрос в Метрику успешно отправлен');
                      }
              </script>
              Всем спасибо за помощь.
                Александр
                Александр Старожил
                07 июня 2016, 17:46
                Добрый вечер.
                Делаю так:
                &successMessage=`Сообщение успешно отправлено
                     <script>yaCounterXXXXXXXX.reachGoal('target');</script>`
                И пишет в консоли при ?_ym_debug=1
                Reach goal. Counter: 29748720. Goal id: ORDER. Params:  undefined
                Что может это значить и как исправить?
                  Сергей
                  Сергей Проверенный
                  07 июня 2016, 17:48
                  — вы вместо XXXXXX номер счетчика то вставили?
                  Александр
                  Александр Старожил
                  07 июня 2016, 17:53
                  &successMessage=`Сообщение успешно отправлено
                                          <script>yaCounter29748720.reachGoal('ORDER');</script>`
                    Сергей
                    Сергей Проверенный
                    07 июня 2016, 17:55
                    Дайте адрес сайта, где форма эта.
                    Сергей
                    Сергей Проверенный
                    07 июня 2016, 17:57
                    У вас точно так?
                    &successMessage=`Сообщение успешно отправлено
                    `
                      Александр
                      Александр Старожил
                      07 июня 2016, 18:01
                      [[!AjaxForm?
                                              &snippet=`FormIt`
                                              &form=`form`
                                              &hooks=`email`
                                              &emailSubject=`Сообщение с сайта «РУБИК-ДИЗАЙН»`
                                              &emailTo=`info@rubik-design.ru`
                                              &emailFrom=`info@rubik-design.ru`
                                              &successMessage=`Сообщение успешно отправлено
                                              <script>yaCounter29748720.reachGoal('ORDER');</script>`
                                              &emailTpl=`report-tpl`
                                              ]]
                        Сергей
                        Сергей Проверенный
                        07 июня 2016, 18:02
                        в метрике тоже у цели ORDER???????????? (идентификатор цели такой же?)
                          Александр
                          Александр Старожил
                          07 июня 2016, 18:07
                          да и изменил на другой но это сути не меняет так как они совпадают
                          может это поможет
                          Reach goal. Counter: 29748720. Goal id: Jivo_Proactive_invitation_shown. Params:  undefined
                          В консоль пишет
                            Сергей
                            Сергей Проверенный
                            07 июня 2016, 18:24
                            Вы к какой форме делаете то??? Это относится исключительно в форме онлайн консультанта JivoSite!
                            А если вы делаете на нижнюю форму, то у вас все работает!
                            Reach goal. Counter: 29748720. Goal id: CLICKCONTACT. Params: undefined — так и должно быть.
                            Если лиды не засчитались, то только потому, что он ваш ip не учитывает.
                              Александр
                              Александр Старожил
                              07 июня 2016, 18:28
                              Это все понятно, думал может как то поможет или в конфликт вступают но после почитал и понял что все ок
                              Можете отправить с формы письмо? Если мои не считает он.
                                Сергей
                                Сергей Проверенный
                                07 июня 2016, 23:40
                                я уже отправлял несколько тестовых, должен засчитать. Как вариант попробовать или через режим инкогнито или с другого браузера.
                                  Александр
                                  Александр Старожил
                                  08 июня 2016, 10:33
                                  Не подскажешь как сделать так чтобы при клике «Отправить» считывался лид, но на конкретной страничке, а форма заказа услуги стоит одна на всех страничках?
                                  Те вариант предыдущий не подходит.
                                    Сергей
                                    Сергей Проверенный
                                    08 июня 2016, 13:35
                                    Вот пример с моего сайта
                                    <script type="text/javascript">
                                            var goalParams1 = {order_price: 123, currency: "RUB"};
                                            function goalCallback1 () {
                                                console.log('запрос в Метрику успешно отправлен');
                                            }
                                    </script>
                    Futuris
                    Futuris Старожил
                    14 июля 2019, 20:55
                    Раньше прописывал параметры цели в коде самой формы (там где
                    <form action="" method="post" ....
                    ) и в итоге получал срабатывание цели просто по нажатию кнопки. Т.е. без разницы успешно отправилась форма или нет — фиксировалась цель по факту клика на кнопкк «Отправить».

                    Решил, как советовали выше попробовать засунуть скрипт в модал. Т.е.
                    [[!AjaxForm?
                         &snippet=`FormIt`
                         &successMessage=`Сообщение успешно отправлено
                         <script>yaCounterXXXXXXXX.reachGoal('target');</script>`
                    ]]
                    Все отлично работает! Цель теперь фиксируется только по факту отправки формы. Но только одна беда — стала очень долго отправляться форма. Виснет секунд на 20!!! Наверное из-за исполняемого скрипта в модале. Может кто подсказать как это исправить?
                      Aborrol
                      Aborrol Старожил
                      14 июля 2019, 22:18
                      modstore.pro/packages/other/reachgoal
                      Или в js ловить событие отправки формы, примеры есть выше в комментарии
                        Futuris
                        Futuris Старожил
                        15 июля 2019, 09:16
                        А как добавить на этй форму еще и цель Google Analytics?
                        Просто добавить код GA в скрипт? Так:
                        [[!AjaxForm?
                             &snippet=`FormIt`
                             &successMessage=`Сообщение успешно отправлено
                             <script>ga('send', 'event', 'form' 'submit'); yaCounterXXXXXXXX.reachGoal('target');</script>`
                        ]]
                      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                      30