WordPress contact form 7 дополнительные настройки

Я уже вам расказывал как можно добавить событие отправленного сообщения в contact form 7 и как отслеживать цели в WordPress, но с версии 4.2 плагин CF7 позволяет указывать больше настроек. Сегодня поговорим о всех дополнительных настройках для плагина WordPress Contact Form 7.

В этой статье описывается блок посвященный только дополнительным настройкам плагина, если вы искали пошаговую настройку для добавления Contact Form 7 на сайт перейдите по этой ссылке: CF7 или воспользуйтесь навигацией по странице ниже.

Если нужно решить проблему с плагином: contact form 7 не работает - можно перейти по указанной ссылке.

 
Навигация по странице:
  1. contact form 7 дополнительные настройки
  2. contact form 7 google analytics
  3. contact form 7 цели метрика
  4. событие для кнопки submit / отправить
  5. событие сообщение отправлено
  6. вывод CF7

Если вы искали информацию о том, как создать форму обратная связь wordpress без плагина или вам нужа красивая обратная связь wordpress - вы можете перейти по ссылкам и прочитать интересующею вас инфу.

Дополнительные настройки для Contact Form 7

к менюс версии плагина 4.2 дополнительные настройки contact form 7 - расширенные

on_sent_ok: - событие contact form 7, срабатывает, когда сообщение было успешно отправлено. Подходит для отслеживания информации в яндекс метрике (цели) или в целях google analytics. Для того чтоб воспользоваться этим событием достаточно вставить функцию вызова javascript кода или сам код, например вот так:

on_sent_ok: "alert('сообщение отправлено успешно');"

on_submit: - событие contact form 7, срабатывает когда была нажата кнопка отправить / send / submit. Идеально подходит для целей google analytics и яндекс метрика цели, ведь вы всегда можете узнать почему успешная отправка сообщения не произошла. Использовать это событие можно аналогично предыдущему on_sent_ok:

on_submit: "alert('вы нажали на кнопку отправить');"

demo_mode: - дополнительный параметр CF7, который позволяет тестировать работу формы без отправки сообщения по почте. Так сказать тестовый режим формы. Чтобы включить его, достаточно написать в дополнительные настройки вот такой код:

demo_mode: on

acceptance_as_validation: - дополнительный параметр CF7, он работает с чекбоксом acceptance и делает кнопку отправки сообщения активной для нажатия, даже когда acceptance равняется false. Включается в дополнительных настройках CF7 вот такой опцией:

acceptance_as_validation: on

На данный момент это все contact form 7 дополнительные настройки, следите за этим постом чтобы быть в курсе событий. Новые настройки этого плагина будут публиковаться здесь после их выхода.

 

Настройка целей google analytics в contact form 7

к менюСейчас поробую расказать вам как настроить цели в contact form 7 google analytics.

Для начала вы должны зарегистрироваться в google analytics ( www.google.com/analytics), а также зайти в "Администратор", выбрать "Аккаунт" и "Ресурс", создать "Представление" и там настроить цели.

Читать более детально

Создаем представление:

contact form-7 google analytics

А также делаем цель с настройками, текстовые поля могут отличаться:

CF7 цели google analytics

После того как вы создали цель к ней можно доступиться по через такой код:

_gaq.push(['_trackEvent', 'order', 'view'])

 

[свернуть]

Предположим у нас есть вот такой код для создания цели в google analytics: _gaq.push(['_trackEvent', 'order', 'view']) , теперь мы можем написать обработчик события отправленного сообщения в contact form 7:

on_sent_ok: "_gaq.push(['_trackEvent', 'order', 'view']);"

если мы хотим отслеживать все успешные отправки формы, или вот такой код:

on_submit: "_gaq.push(['_trackEvent', 'order', 'view']);"

если нам нужны все клики (с удачной и неудачной отправкой формы) по кнопке "Отправить"

Записывать этот код нужно в дополнительные настройки contact form 7.

 

Настройка contact form 7 цели метрика

к менюНастройка целей в метрике немного попроще чем в гугле. Механизм работы аналогичный, создаем аккаунт в метрике, создаем цель и получаем код.

Не знаете как получить код, воспользуйтесь инструкцией ниже:

1) Регистрируемся в яндекс метрике. Для этого можно воспользоваться ссылкой метрика. Если у вас нет аккаунта на яндексе, то можно тут зарегистрироваться.

2) Добавляем наш сайт в метрику и закидываем себе на сайт код, который дает яндекс.

3) В разделе настройка, выбираем вкладку цели, смотрите скин ниже, он открывается во всплывающем окне:

img-cf7-metr-1

4) Нажимаем на кнопку "добавить цель"  и заполняем ее как у меня на скине, в конце нужно нажать кнопку "Добавить цель"

img-cf7-metr-2

5) У нас есть цель, если вы задали ее имя как я "Form1" то вам нужно по этой схеме вставить код вызова:

yaCounterXXXXXX.reachGoal('TARGET_NAME');
где:
XXXXXX — номер вашего id из метрики;
TARGET_NAME — идентификатор вашей цели (у меня это "Form1")

Как получить идентифакотр, да очень просто, в коде, который вы добавляли на сайт, от метрики, можно его подсмотреть, вот например у меня он такой:

w.yaCounter24933886 = new Ya.Metrika({id:24933886,

где 24933886 и есть мой ИД. В итоге код будет вот таким:

yaCounter24933886.reachGoal('Form1');

Предположим что у нас получился вот такой код: yaCounter2015xxxx.reachGoal('Form1'); вставляем его по аналогии в дополнительные настройки CF7

on_sent_ok: "yaCounter2015xxxx.reachGoal('Form1');"

если хотим чтоб яндекс цель срабатывала только при отправке формы, или же как альтернатива:

on_submit: "yaCounter2015xxxx.reachGoal('Form1');"

при такой реализации мы получим срабатывание целей при любом варианте развития событий, будь то форма отправленная или нет.

Как вы поняли вставляем этот код в contact form 7 дополнительные настройки, как показано на рисунке:

contact form 7 дополнительные настройки

 

Событие contact form 7 для кнопки submit / отправить

к менюЯ хотел бы более детально остановится на событиях плагина. Событие on_submit позволяет отслеживать нажатие по кнопке отправить или submit. Это довольно удобный функционал в дополнительных настройках, который позволяет делать собственные эффекты при клике по кнопке отправить и многое другое. Для вызова достаточно в дополнительные настройки прописать:

on_submit: "goBlackFon();"

, где goBlackFon - это ваша функция с записанными спец эффектами.

Это новое событие, которое выводит плагин contact form 7 на новый уровень и позволяет фиксировать момент нажатия на кнопку Отправить, не дожидаясь результатов отправки. Например, если нам нужно при неудачной отправке сообщения вывести эффект на странице или сделать любое другое действие, мы должны слушать именно этот параметр.

 

Событие сообщение отправлено в contact form 7

к менюon_sent_ok - срабатывает когда сообщение было отправлено успешно и не работает когда человек не заполнил полностью нужные данные. На базе этой функции можно реализовать: гугл и яндекс цели, разного рода эффекты на страница после отправки сообщения, редиректы на другие страницы после отправки почты, добавление или расширение функционала (после того как человек заполнил и успешно отправил контактные данные о себе), вызов аякс приложения для последующей работы с ним и многое другое. Мне приходилось реализовывать генерацию ссылки на скрытый файл после заполнения формы и это удалось только благодаря событию on_sent_ok, которое нужно записать в дополнительные настройки плагина. Предположим нам нужно вызвать свою функцию после отправки сообщения, это делается вот так:

on_sent_ok: "myFunction();"

 или же, можно писать код прям в настройках:

on_sent_ok: "function(){alert('Сообщение отправлено успешно');}"

В новой версии CF7 код выше работать не будет.

Если вам нужно добавить несколько целей, например в метрику и гугл аналитику, то нужно воспользоваться вот таким кодом:

on_sent_ok: "yaCounter2015xxxx.reachGoal('Form1'); _gaq.push(['_trackEvent', 'order', 'view']);"

Для тестирования работы такой формы можно вкинуть 2 алерта в код, такого плана:

on_sent_ok: "alert('Сообщение отправлено успешно'); alert('Второй тест');"

 

В заключение хочу добавить, что умело используя contact form 7 дополнительные настройки вы сможете справится с большинством задач, которые ставит перед вами задачи.

Надеюсь это не последнее новшество разработчиков этого плагина, а поэтому ставьте пост себе в закладки, жмите лайк, я буду добавлять новые настройки сюда по мере их создания.

Вывод Contact Form 7 в шаблон

к менюРешил немножко дополнить этот пост информацией о выводе плагина CF7 в произвольное место шаблона, так как многих читателей интересует именно этот вопрос.

Сделать вывод Contact Form 7 в виджет или пост довольно просто, нам нужно банально взять шорткод и вставить в нужное место, а вот с произвольным выводом в шаблон придется повозится.

Для вывода CF7 в шаблон WP я использую вот такой код:

<?php echo do_shortcode('ваш шорткод для CF7');?>

Более детально о Contact Form 7 настройка можно прочитать перейдя по ссылке.

Комментарии к записи «WordPress contact form 7 дополнительные настройки»:
  1. Алексей:

    Подскажите пожалуйста, какой код нужно вставить, чтобы после отправки формы, она очищалась и можно снова отправлять.

    • admin:

      По умолчанию форма очищается после успешной отправки сама.
      Возможно у вас в теме в файле footer.php отсутствует код wp_footer();

  2. Стас:

    Подскажите в чем может быть проблема. Ставлю в настройках параметр acceptance_as_validation: on по сути форма не должна отправляться пока пользователь не примет соглашение, но отправка идет даже если условие не принято. Спасибо.

    • admin:

      Добрый день.
      А какой у вас тип чекбокса для вашего условия? Там в доке acceptance должен быть, обычный чекбокс не будет работать.

  3. Алексей:

    Подскажите пожалуйста, мне нужно вместо стандартного всплывающего сообщения, после успешной отправки формы переадресовывать человека на страницу /thanks-for-request/ на этом же сайте. Как это правильно прописать? Пробовал вариант описанный выше
    setTimeout('window.location.assign("/thanks-for-request/")', 500); но он не срабатывает.

    • admin:

      Добрый день.
      Вот этот варинт с работающего сайта:
      setTimeout(function(){window.location.href="ваша ссылка";},5);

      Тот пример что вы взяли из кода пользователя "Илья" у него немного другая ситуация была видимо.

      И путь переадресации нужно писать польностью начиная с http

  4. Иван:

    Забыл добавить. Спасибо за статью! Подродно и доходчиво написано.

  5. Иван:

    А как прописать цель на заполнение полей формы без отправки?То есть если посетитель заполнил несколько полей но не отправил форму и покинул страницу

    • admin:

      Уточните плз.. какая у вас форма: всплывающая по клику на что либо или встроенная на страницу??

      Это важно так как для всплывающей можно отслеживать клик по кнопке для показа формы, а вот для встроенной сложно ответить. Ну сейчас в голову приходить что можно на яваскрипте отслеживать изменения в полях инпут, хотя у вас буде очень много событий тогда 🙁

    • Иван:

      Форма вставлена на страницу, не всплывающая. Мне нужно что бы цель определялась заполнением хотя бы одного поля формы ну или нажатием на поле. Можно пример: если есть?

    • admin:

      Примера нет, тестить нет времени, но должно как то так быть:
      1) добавьте для поля в форме класс или ид
      2) в скипт нужно забросить что то в этом роде $(".input_class").change(function(){код вызова метрики});

    • Иван:

      А если платно,сможешь сделать с подробным описанием и протестить ? Отпишись на мыло.

  6. Роман:

    Здравствуйте! не могу понять как мне прописать несколько почтовых адресов для отправки для одного отдела например:
    Выберите получателя (обязательно)
    [select* menu-3 "Отдел кадров|Ver****@gmail.com,****dm@mail.ru, ******@ru"]
    [select* menu-1 "Отдел менеджеров|Ver****@gmail.com,****dm@mail.ru, ******@ru"]

    • Роман:

      Забыл уточнить, надо чтобы адреса были как скрытая копия

      bcc:****@1.ru

    • admin:

      Добрый вечер.
      Я правильно вас понимаю, вам нужно в блоке select указать почтовые адреса, куда будет почта приходить?? Или я не понял вас?
      В общем если вставить в поле кому: [menu-3], [menu-1] то почта должна уйти и первому и второму пользователю.

  7. Ирина:

    Здравствуйте! Подскажите как сделать что бы при нажатии кнопки "Отправить" Всплывало модальное окно с текстом "Благодарим"?
    Пробовала так - не получается:
    Вариант 1:
    on_submit: "setTimeout(function(){span class="eModal-3"
    Вариант 2:
    on_submit: "setTimeout(function(){window.location.href = "eModal-3"

    • admin:

      Добрый день. Думаю есть смысл попробовать написать функцию, вот все что вы писали только в отдельную функцию, и подключить раньше вызова cf7.

      Например, вот такая функция:
      function showMessInCf7(){
      alert("Благодарим");
      }

      а в самой форме подключать вызов:

      on_sent_ok: "showMessInCf7();"

  8. Евгений:

    День добрый) перерыл уже все и тут читал как перенапрвить после нажатия кнопки отправить вставил в код в дополниетльные натройки а все равно ничего не происходит ( помогите а то горит заказ уже не рад что связался с ней сайт (-url-) нажмите увидите) жду очень ответьте на опчту помогите

    • admin:

      Добрый день.
      1) У вас ошибка яваскрипта TypeError: $(...).mask is not a function $(".data").mask("99/99/9999");
      2) в теме видимо забыли подключить wp_head() и wp_footer() в шапке и футере соответственно - если нет одной из этих функций то вместо аякс мы видим перезагрузку страницы

      Видимо в п. 2 и есть ваша проблема хотя и п1 может такое делать

    • Евгений:

      А как осуществить пункт 2,куда это подключать и каким кодом в теме?В моем сайте?Напишите спасибо

  9. Владимир:

    Здравствуйте! Подскажите как сделать что бы при нажатии кнопки "Отправить" Всплывала новая форма для заполнения других данных?

    • admin:

      Добрый день.
      Задачка интересная. Как вариант для кнопки добавить какой-то класс или ИД и на этот селектор в яваскрипте навесить событие .on("click",function(){код для отображения второй формы; return false;});

      return false; - в вашем случае запретит делать какие либо действия с кнопкой, такие как отправка данных

  10. Оксана:

    Добрый день!
    Скажите, пожалуйста, а откуда Вы взяли код: yaCounter2015xxxx.reachGoal('Form1')

    Form1 понятно, это мы заполнили. А yaCounter2015xxxx.reachGoal где берется?
    Спасибо заранее 🙂

    • admin:

      Добрый день.
      Если посмотреть шаг 5 выше то там можно найти такой текст:

      yaCounterXXXXXX.reachGoal('TARGET_NAME');
      где:
      XXXXXX — номер вашего id из метрики;
      TARGET_NAME — идентификатор вашей цели (у меня это "Form1")

      XXXXXX находится в коде вашей метрики и перед ним уже написано yaCounter

  11. Виктор:

    Как можно использовать шорткоды в шаблона письма плагина Contact Form 7 ?

    • admin:

      Ну [your-name] в теле письма - это и есть шорткод CF7. Если вам нужно использовать шорткод в значении value для input например, то нужно установить плагин динамических полей Contact Form 7 - Dynamic Text Extension у него есть возможность вставки шорткодов там есть инструкция. Если например у вас шорткод [my_short] то поле будет так выглядеть [dynamictext dynamictext-555 "my_short"]

  12. Павел:

    Подскажите как в форму contact form 7 вывести user_email, first_name, last_name из профиля авторизации на сайте?

    • admin:

      Добрый день.
      Как я себе представляю, то нужно установить плагин динамических полей для CF7, далее взять видимо динамическое поле и забросить в него шорткод. В шорткоде сделать проверку, если юзер вошел на сайт под ником у него есть свой ИД, то по id можно получить и почту и имя и другую информацию. если нет то даем пустой ответ шорткода. как то так 🙂

  13. Евгений:

    Добрый день! Такой вопрос: как сделать отправку писем на разные ящики в зависимости от значения одного из полей?

    • admin:

      Добрый день.
      Нужно адрес отправки записать в переменную, создать скрытое поле у формы и в зависимости от значения заполнять это поле нужным значением.
      В поле to в формы вставить код скрытого поля. И будет все работать

  14. Андрей:

    Здравствуйте. Вижу что ранее разбиралась моя проблема, но решения так и не увидел. При постановки цели на форму при удачной отправке перестаёт выводить сообщение.

    • admin:

      Добрый день. Нужно смотреть конкретный сайт. Не знаю в чем может быть проблема, как вариант ошибка в яваскрипте

  15. Игорь:

    Здравствуйте,возможно ли реализовать чтобы после заполнения анкеты анкета приходила не письмом, а вносилась автоматически в excell файл.На самом деле нужно реализовать, чтобы все анкеты были в одном месте так как письмом не очень удобно когда приходит порядка 50 анкет в день, но как это сделать к сожалению не понимаю ((( Спасибо. Если кто может такое сделать готов оплатить работу )

    • admin:

      Добрый день.
      Мы не сможем взяться за такую работу.

  16. Сергей:

    Здравствуйте, подскажите пожалуйста как реализовать чтобы после нажатия на кнопку Submit человеку выводилось сообщение ваш порядковый номер к примеру - 10. А на почту ко мне приходили данные человека и этот его порядковый номер 10. Уже мозг закипел. Спасибо.

    • admin:

      Добрый день.
      Ну если вкратце, то
      1) делаем в базе поле для счетчика, как вариант опцию
      2) на яваскрипте запрещаем по клику на кнопку делать отправку данных вместо этого запускаем аякс запрос, который берет значение из базы и обновляет его на +1.
      3) по приходу аякс ответа в скрытое поле записываем динамическое значение на яваскрипте и обновляем форму, отправляем данные.
      4) если форма была отправлена показываем число.

      Ну как то так. Реально геморойная задача. возможно есть вариант по проще, например генирировать случайное число и отправлять его динамически но тогда оно точно не будет порядковым

  17. Дмитрий:

    Здравствуйте. есть форма проверки подключен ли дом к интернету, данные которые вводятся это улица, номер дома, подъезд. После нажатия кнопки отправить, приходит письмо, и на сайте выводится сообщение "Спасибо за Ваше сообщение. Оно было отправлено." Как сделать чтоб происходило сравнение с базой данных адреса и если он там есть вместо этого сообщения выводилось, что дом подключен или не подключен.

    • admin:

      Добрый день.
      Пропустил ваше обращение, извините.
      Из того что могу посоветовать, это рассказать как перехватить обработчик контакт форм 7. Делается это вот так:

      function wpcf7_before_send_mail_my($cf7){
      if(in_array($cf7->id,array(8,28372))){ // массив ИД форм которую отслеживаем
      делаем проверку
      если не прошли проверку то можно отправить что то вроде wp_die(); exit;
      }
      }
      add_filter( 'wpcf7_before_send_mail', 'wpcf7_before_send_mail_my' );

      Код для проверки уже смотрите сами какой должен быть.
      К полям внутри функции можно обращаться вот так: $_POST['your-name']

  18. Алексей:

    Добрый день, существует ли для CF расширение, которое позволило бы использовать введенные пользователем данные для генерации статьи? Пример: пользователь вводит имя и фамилию, отправляет данные, нажав на кнопку, и редиректится на страницу, где написано: "Здравствуйте, Имя Фамилия". Спасибо

    • admin:

      Добрый день.
      За CF7 не знаю, не встречал, но вот у Вордпреса есть встроенный механихм публикации постов, называется "Публикация через e-mail", находится в настройках вашсайт/wp-admin/options-writing.php думаю через это реально реализовать ваш задум. Ну или же фронтенд редактор использовать, кстати у плагина ACF есть функция фронтенд редактирования и добавления постов

  19. Ильнар:

    Спасибо большое)))

  20. Ильнар:

    Здравствуйте)а как реализовать чтоб при нажатии кнопки "Отправить" пользователей перекидывало на другой сайт допустим или на главную страницу?)Если можно,то по подробнее пожалуйста)Спасибо заранее)

    • admin:

      Добрый день.
      По подробнее это готовый код 🙂 ?
      Вот это закиньте в дополнительные настройки вашей формы на contact form 7:

      on_sent_ok: "setTimeout(function(){window.location.href = "http://help-wp.ru";},10);"

      Он сработает когда форма была успешно отправленная. Редирект произойдет после того, как пользователь увидит сообщение что его сообщение было успешно отправленное.

      Если вам нужно сразу по клику отправлять человека не дожидаясь результатов проверки то стоить вот такой код использовать для редиректа с формы CF7:

      on_submit: "setTimeout(function(){window.location.href = "http://help-wp.ru";},10);"

  21. Александр:

    Добрый день, подскажите, как можно сделать в contact form 7, чтобы выдавал источник и фразу по которой была сделана заявка?

    • admin:

      Добрый день.
      Я такие вещи делаю через яваскрипт + в саму форму добавляю скрытое поле. О том как добавить скрытое поле есть тут информация http://help-wp.ru/contact-form-7/#zg4 , а вот сам код яваскрипта индивидуальный. ну если вкратце, то у нас есть событие клика по кнопке или загрузка стрницы или другое действие, мы записываем нашу информацию в поле.

  22. Олег:

    Добрый день.
    После вставки кода типа: on_sent_ok: "yaCounter2015xxxx.reachGoal('Form1'); _gaq.push(['_trackEvent', 'order', 'view']);"

    Форма перестает показывать сообщение о том что она отправлена, письмо при этом сваливается, и в метрику ничего не приходит

    • admin:

      Добрый день.
      Дак вы свой код вставляете или этот из примера?? Код вызова метрики и гугл целей нужно зарегистрировать и получить отдельно и вставить как на примере и все будет работать. Возможно вы допустили ошибку в кавычках " и '

    • Павел:

      Подтверждаю
      при вставке кода on_sent_ok: "yaCounter_мой_счетчик_xxxx.reachGoal('Form1'); _gaq.push(['_trackEvent', 'order', 'view']);" в "Дополнительно"
      форма перестает отправляться

    • Анди:

      Такая же точно проблема. Опытным путем выяснил, что без проблем работает только если вставлять код для Метрики ** on_sent_ok: "yaCounterХХХХХХ.reachGoal('goalname');" **

      Если вставлять обработчик для GA (не важно - отдельно или параллельно с обработчиком для Метрики), то возникает вышеописанная проблема.

      Решил кто-нибудь?

    • Анди:

      Решил проблему, если кому интересно! И сообщение об отправке появляется, и цели считаются.

      Код такой: ** on_sent_ok: "yaCounterХХХХХХ.reachGoal('ИМЯЦЕЛИ'); ga('send', 'event', 'Contact Form', 'submit');" **

      В GA создаете цель типа "Событие", категорию события именуете "Contact Form", а действие события - "submit"

    • admin:

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

  23. Алекс:

    Добрый день. Подскажите, как вывести на экран количество нажатия кнопки on_submit?

    • admin:

      Добрый.
      К сожалению не сильно понимаю цель и смысл этой задачи. на кнопку сабмит можно нажать 1 раз, смысл нажимать больше раз?

      Возможно вам нужно подсчитать количество нажатий на кнопку до ее отправки, например когда человек забыл всю информацию заполнить?? в таком случае придется писать аякс запрос и сохранять в базу или же использовать сесии с яваскрипта и туда писать события по on_submit
      Готового кода к сожалению у меня нет

  24. Сергей:

    Подскажите как в ContactForm 7 сделать так, чтобы при отправке клиентом своих данных - нажатии кнопки в ContactForm 7, открывалось новая popup страничка по гиперссылке (-url-)

    • admin:

      Как вариант, нужно создать функцию, например такого плана и в нее поместить код для отображения попапа.
      function mywork(){
      ... тут код для отображения попапа
      }

      а в настройки контакт форм 7 закидываем вот такой код:
      on_sent_ok: "mywork();"
      выше в статье описано куда нужно добавлять код, не буду повторяться

  25. Александр:

    Спасибо за статью.
    у меня кнопка Отправить - отправляет данные для обратного звонка.
    установил в дополнительные настройки формы код
    on_submit: "yaCounter37111.reachGoal('zvonok');"
    on_submit: "_gaq.push(['_trackEvent', 'zakaz', 'zvonok']);"
    цель на отправку в яндекс метрики срабатывает, в гугл не фиксируется
    что может быть не так? спасибо

    • admin:

      Добрый день.
      В дополнительных настройках CF7 не предусмотрено использование события несколько раз.
      Вам нужно писать код вот такого плана:

      on_submit: "yaCounter37111.reachGoal('zvonok'); _gaq.push(['_trackEvent', 'zakaz', 'zvonok']);"

  26. Марина:

    Подключаю цель для метрики, но что то не подключается. Не могу понять как правильно сформулировать запрос, у вас 2015ХХХХ это что?

    • admin:

      Добрый день.
      Для начала вам нужно зарегистрироваться в яндекс вебмастере и добавить код метрики к себе на сайт. В коде метрики есть идентификатор, такого плана id: идут цифры.

      Вставлять нужно так:
      yaCounterXXXXXX.reachGoal('TARGET_NAME');
      где:
      XXXXXX — номер вашего id из метрики;
      TARGET_NAME — идентификатор вашей цели

      вроде все

  27. Кирилл:

    Добрый день.
    Сообщения приходят, но в почте в колонке "От" в списке писем, пишется "WordPress". Подскажите как сменить эту надпись. Спасибо.

    • admin:

      Добрый день.
      А зачем что то менять? Если вам нужна возможность отвечать через почтовик, то можно добавить код:
      Reply-To: [your-email]
      в поле "Дополнительные заголовки", которое находится во второй вкладке "Письмо",
      где your-email это ваше поле куда вводят пользователи свою почту

  28. Вадим:

    Добрый день, проблема не работает данный хук. Цель не отрабатывает и при сохранении есть сообщение "Данная форма имеет ошибку конфигурации ."

    on_sent_ok: "yaCounter34732560.reachGoal('form1');"

    • admin:

      Добрый день.
      Нужно проверить работу ваших скриптов, возможно там ошибки. Как вариант закиньте такой код и посмотрите что будет:
      on_sent_ok: "function(){alert('Сообщение отправлено успешно');}"

      Можете скинуть ссылку на сайт и я тоже посмотрю.

  29. Дмитрий:

    Добрый день. Возможно ли после отправки письма через Contact Form 7 отправить письмо отправителю с подтвержением на введенный им ящик

    • admin:

      Добрый день.
      Отправить письмо возможно, также возможно туда вставить произвольную ссылку, но вот механизм подтверждения на пхп придется организовывать самостоятельно.

  30. Илья:

    Полностью согласен с вами, contact form 7 реально самый лучший плагин для отправки сообщений с сайта.
    Обратная связь просто обалденная 🙂

  31. Роман:

    Доброе время суток.
    Подскажите пожалуйста, а есть ли возможность сделать редирект писем на другой адрес?

    • admin:

      Добрый день.
      Можно включить отправку копии на другой адрес, можно несколько адресатов через запятую задать.

  32. Борис:

    Здравствуйте. Необходимо в CF7 сделать редирект на различные страницы сайта в зависимости от выбранного значения в выпадающем меню. Возможно это осуществить в дополнительных настройках с помощью функции on_sent_ok?Или какие другие решения есть этой задачи? СПАСИБО.

    • admin:

      Добрый день.
      Ответил вам в разделе Вопрос/ответ.
      Редиректы с яваскрипт делать можно. on_sent_ok сработает когда сообщение отправлено успешно, цепляем на ее функцию, в которой набор редиректов и используем 🙂

  33. Николай:

    Вставил код в контактформ7
    on_sent_ok: "yaCounter16986630.reachGoal('ZAKAZ');"
    on_sent_ok: "function(){alert('Сообщение отправлено успешно');}"
    on_submit: "function(){alert('Нажата кнопка отправить');}"
    страница формы (-url-)

    Тоже крутиться стрелки, письма приходят.
    Что делать?

    • admin:

      Добрый день. А зачем вы 2 раза добавили on_sent_ok: ??

      Сейчас смотрю ваш сайт, форма работает отлично, лоадер крутится потом отправляет и вылазит зеленая вкладка, или карасная если не заполнить поля.

  34. Алексей:

    Добрый день.
    Вставляю код в текстовый виджет со своим шорткодом, но форма не выводится. При этом во всплывающем окне для заказа обратного звонка все отображается и работает работает. Смотрю исходный код. а там:

    Почему не выводится?

    • admin:

      Добрый день.
      Сори, раньше не смог ответить.
      Думаю что у вас в текстовых виджетов не включена поддержка шорткодов.
      Вот я об этом описывал тут http://help-wp.ru/ne-rabotayut-shortkody-wordpress/

  35. Андрей:

    А возможно ли сделать так чтобы отправлялись данные формы с одной страницы на один адрес, а с другой на другой и т.д. Т.к. страниц много - создавать кучу форм не вариант.

    • admin:

      Добрый день.
      Теоретически можно. 100% можно записать почтовые адреса в яваскрипт и потом в зависимости от урла писать их в инпут по идентивикатору.

      Можно попробовать в место где адрес вставить шорткод, а в функциях прописать шорткод, который в зависимости от страницы будет возвращать разные почтовые адреса. Второй вариант никогда не проверял, но точно знаю что contact form 7 умеет запускать пользовательские шорткоды

  36. Александра:

    ребят, помогите, пожалуйста. Второй день мучаюсь, даже не представляла себе, что есть вещи, с которыми могу столько времени сидеть.

    Вроде простая задача - поставить цель на on_sent_ok или хотя бы на on_submit

    Перепробовала уже все варианты, ни один не выводит цель в метрику.

    on_sent_ok: "yaCounter2015xxxx.reachGoal('Form1');"
    on_submit: "yaCounter2015xxxx.reachGoal('Form1');"
    с return true;
    в любой последовательности, отдельно и вместе - для проверки... никаких вариантов не осталось.

    Более того, с любом случае, на отправку, или на нажатие, при вписывании в дополнительные настройки cf7 перестают проявляться уведомления об отправке. Если прописываю дополнительно уведомления об отправке - они проходят. Цели - нет

    on_submit: "yaCounter23725456.reachGoal ('sendform');"
    on_sent_ok: "alert('Сообщение отправлено успешно');" - последний вариант

    Я понимаю, что блондинка латентная и вообще, но у меня идеи кончились

    • admin:

      Добрый день.
      Попробуйте закинуть оба варианта:
      on_sent_ok: "function(){alert('Сообщение отправлено успешно');}"
      on_submit: "function(){alert('Нажата кнопка отправить');}"

      и дайте ссылку на страницу и укажите где находится форма, если ее сразу не видно или их несколько. думаю что смогу вам помочь. (можно на почту, написал вам)

    • Андрей:

      Та же проблема, что и у Александры...

    • Андрей:

      Странно, все заработало...

  37. Дмитрий:

    Добрый день. Подскажите, как изменить стиль определенного блока 'div' , после удачной отправки формы?

    • admin:

      Добрый день.
      Создать файл яваскрипт с функцией для изменения дива, подцепить его к теме.
      А в настройках плагина contact form 7 вызвать таким вот образом

      on_sent_ok: "myFunction();"

      myFunction имя функции.
      Например такого плана:

      function myFunction(){$("#mydiv").css("color","#ff0000");}

  38. Лана:

    маленькая проблемка с плагином contact form 7, он по какой то причине не обновляет страницу отправки сообщения, жмешь кнопку - а дальше до бесконечности крутятся стрелки... письма на почту приходят и в бд все прописывается. проверила на совместимость с другими плагинами, конфликта нет...

    • admin:

      возможно у вашей темы в шапке не подключен wp_head(); а в футере wp_footer();

    • Максим:

      Также не получаю статус - отправлено/не отравлено, только вращение стрелок, сами письма приходят.
      В шаблоне есть wp_head() и wp_footer(), конфликтов нет с плагинами...

    • admin:

      Покажите ссылку на сайт, можно по почте. Написал вам с нее. Думаю у вас банально или в стилях запрещена выпадашка, или не хватает высоты блока. Или ответ сервера портится при отправке. Если дадите ссылку попробую подсказать где проблема.

  39. Илья:

    Как сделать ДВА и более действия на on_sent_ok? Вот так редиректит, но не учитывает в аналитикс:
    on_sent_ok: "ga('send', 'event', 'TROSO', 'Submit'); location = '(-url-)';"

    • admin:

      У вас редирект идет быстрее чем отправка аналитикса. Если код аналитикса правильный то нужно переписать редирект вот так:
      setTimeout("window.location.assign(ваша ссылка)",500);

    • Илья:

      Внимание к кавычкам. Вот так по-прежнему редиректит, но не учитывает в Аналитикс:
      on_sent_ok: "ga('send', 'event', 'TROSO', 'Submit'); setTimeout('window.location.assign("http://yourсайт.ru/")', 500);"

      А если добавляю еще Яндекс-цель - тоже не работает.
      yaCounter192850ХХ.reachGoal(‘TROSO’); return true;

    • admin:

      Попробуйте закинуть все в функцию и добавить ее в начало страницы или просто в яваскрипт код.

      function my_sent_ok(){
      ga('send', 'event', 'TROSO', 'Submit');
      yaCounter192850ХХ.reachGoal(‘TROSO’);
      setTimeout('window.location.assign("http://yourсайт.ru/")', 500);
      }

      и вызов тогда on_sent_ok: "my_sent_ok();"

    • Илья:

      Пробовал скрипт сверху в форме. Все равно не отправляет. А в он_сент_ок Яндекс упорно все портит. Оставил неоптимальный вариант:
      on_sent_ok: "ga('send', 'event', 'PASS', 'Submit'); setTimeout('window.location.assign("http://yourсайт.ru/thank-you/")', 500);"
      on_submit: "yaCounter192850ХХ.reachGoal('TROSO'); return true;"

  40. Макксим:

    ну новый интерфейс плагина мягко говоря неудобный. ведь то можно было все в одном месте править, теперь нужно переключаться между вкладками.
    Зато contact form 7 приобрел дополнительные настройки, которых так не хватало. Лично мне не хватало. А то в метрике отслеживаешь только удачные клики, а если клик был но не удачный то я в метрике ничего не видел. Получается реклама шла впустую

  41. Светлана:

    помогите пожалуйста, обновила плагин contact form 7 и все формы перестали работать. не идет отправка данных, пишет мол сообщение не отправлено обратитесь к администратору сайта. Дополнительные настройки плагина я точно не трогала, правок больше никаких не вносила. если сталкивались с такой проблемой буду признательная за помощь.

    • admin:

      Добрый день.
      Думаю стоить обратиться к тех. поддержке, возможно это связанно именно с их действиями, а не обновлением плагина contact form 7. У меня был случай когда хостер отключал обратную связь за спам, а заметил это пользователь когда начал тестировать форму после обновления. Дополнительные настройки на это точно никак не влияют.

  42. Стас:

    Для меня конечно хватало и одной настройки события, но тестовый режим для форм CF7 это довольно круто и удобно при разработке.
    Дополнительные настройки contact form 7 это в первую очередь помощь разработчикам, простым пользователям они и не понятны и не сильно нужны 🙂

Сделать заказ
Онлайн помощь по WordPress