Интеграция плагина Contact Form 7 с CRM Битрикс24
Интеграция плагина Contact Form 7 с CRM Битрикс24 весьма непростая задача, в которой есть свои нюансы. В этой статье мы рассмотрим метод интеграции самой популярной формы обратной связи Contact Form 7 c CRM системой Bitrix24, что на мой личный взгляд является лучшей CRM в российском сегменте интернета, с помощью входящего веб-хука.
Прежде чем начать, убедитесь, что Вы обладатель тарифа в Битрикс24, который позволяет Вам работать с Лидами, а именно с этой секцией CRM системы мы будем работать.
Если с тарифом все ОК, то зайдите в карточку Лида и отредактируйте ее на Ваше усмотрение, но, самое главное, не забудьте создать дополнительные произвольные поля для тех данных, которые дополнительно Вы хотите получать из формы обратной связи. Допустим, Вы туристическое агентство и Вам нужно, чтобы мы автоматически из формы обратной связи создавали Лид с таким полем как «Направление» или любым другим, то создайте соответствующее поле в CRM Битрикс24.
Далее Вам необходимо создать так называемый входящий вебхук. Для того, чтобы понимать, как его создавать обратитесь к официальной инструкции от Битрикс24. Можно почитать здесь.
Когда все предварительные манипуляции сделаны, Вам необходимо открыть файл functions.php в папке Вашей темы WordPress, если такого файла нет, то создайте его. В этот файл вставьте следующий код, все комментарии я дал непосредственно в коде.
Пример интеграции Contact Form 7 и CRM Битрикс24
// Вызываем функцию для перехвата данных
add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' );
function your_wpcf7_mail_sent_function( $contact_form ) {
// Перехватываем данные из Contact Form 7
$title = $contact_form->title;
$posted_data = $contact_form->posted_data;
//Вместо "Форма заявки" необходимо указать название вашей контактной формы
if ('Форма заявки' == $title ) {
$submission = WPCF7_Submission::get_instance();
$posted_data = $submission->get_posted_data();
// Далее перехватываем введенные данные в полях Contact Form 7:
$firstName = $posted_data['myname'];
$myemail = $posted_data['myemail'];
$myphone = $posted_data['myphone'];
$napravlenie = $posted_data['kudaehat'];
$colchel = $posted_data['kolichestvomest'];
$mydata = $posted_data['date-553'];
$mycomments = $posted_data['mycomments'];
// Формируем URL в переменной $queryUrl для отправки сообщений в лиды Битрикс24, где
// указываем [ваше_название], [идентификатор_пользователя] и [код_вебхука]
$queryUrl = 'https://[ваше_название].bitrix24.ru/rest/[идентификатор_пользователя]/[код_вебхука]/crm.lead.add.json';
// Формируем параметры для создания лида в переменной $queryData
$queryData = http_build_query(array(
'fields' => array(
// Устанавливаем название для заголовка лида
'TITLE' => $firstName,
'COMMENTS' => $mycomments,
'EMAIL' => Array(
"n0" => Array(
"VALUE" => $myemail,
"VALUE_TYPE" => "HOME",
),
),
'PHONE' => Array(
"n0" => Array(
"VALUE" => $myphone,
"VALUE_TYPE" => "MOBILE",
),
),
'UF_CRM_1726095176888' => $napravlenie, //Обращение к произвольному полю
'UF_CRM_1726260110836' => $colchel,
'UF_CRM_1726260373638' => $mydata,
'COMMENTS' => $mycomments,
),
'params' => array("REGISTER_SONET_EVENT" => "Y")
));
// Обращаемся к Битрикс24 при помощи функции curl_exec
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
if (array_key_exists('error', $result)) echo "Ошибка при сохранении лида: ".$result['error_description']."<br/>";
}
}
Теперь немного комментариев. Самое главное, посмотрите, как называется Ваша форма обратной связи в интерфейсе Contact Form 7, после чего вставьте его вместо моего названия «Форма заявки».
Чтобы получить Ваши [ваше_название], [идентификатор_пользователя] и [код_вебхука], Вам необходимо создать входящий вебхук в Битрикс24, инструкция здесь, если Вы это еще не сделали. Из ссылки, что Вы создадите, Вы получите и название и идентификатор и код вебхука.
Поле Title — обязательно для заполнения. Для удобства я прописываю туда Имя клиента.
Телефоны и Емейлы передаются исключительно массивом, будьте внимательны.
Наименования в скобочках [‘myphone’] берутся из переменных, которые Вы используете в самой форме обратной связи Contact Form 7.
Интеграция произвольных полей Битрикс24 c Contact Form 7
Самой большой головной болью для всех людей, кто хочет интегрировать Форму обратной связи с Contact Form 7 является интеграция произвольных полей. Здесь я даже записал небольшое видео и выложил его в Rutube (кстати, подписывайтесь и ставьте лайки), так как найти UF_CRM_1726095176888 похожее вот такое название Вашего добавленного поля в Битрикс24 еще нужно постараться.
Надеюсь из видео Вы узнали как найти Ваш символьный код произвольного поля и теперь с легкостью добавите его в свой код. Собственно и все! Сохраняем файл functions.php и наслаждаемся интеграцией. По всем вопросам оставляйте комментарии под этой статьей. Всем спасибо.
Свяжитесь с нами уже сейчас
- +7 (906) 272-38-19
Telegram / WhatsApp - info@cruelten.ru
- Cruelten
- Cruelten
Вы привыкли видеть здесь форму обратной связи. Ведь так? Ее делают почти все. Но исследуя поведение людей, мы пришли к выводу, что форма совершенно не нужна. В любом случае все сводится к обсуждению Вашего проекта в WhatsApp или Telegram. А зачем нам тратить Ваше время на заполнение различных форм? Поэтому, пишите в Telegram или в WhatsApp.