Интеграция Contact Form 7 и Битрикс 24 - OSMMiNoG

OSMMiNoG

Поделиться в whatsapp
Поделиться в vk
Поделиться в odnoklassniki
Поделиться в telegram
Поделиться в facebook
Поделиться в email

Интеграция Contact Form 7 и Битрикс 24

Код для вставки в Function.php

// Вызываем функцию для перехвата данных
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:
// 1. Перехватываем поле [your-name]
$firstName = $posted_data[‘your-name’];
// 2. Перехватываем поле [your-tel]
$tel = $posted_data[‘your-tel’];
// 3. Перехватываем поле [your-email]
$mail = $posted_data[‘your-email’];
// 4. Перехватываем поле [your-message]
$message = $posted_data[‘your-message’];

// Формируем URL в переменной $queryUrl для отправки сообщений в лиды Битрикс24, где
// указываем [вашеназвание], [идентификаторпользователя] и [код_вебхука]
$queryUrl = ‘https://osmminog.bitrix24.ru/rest/1/4uz09i008brjptec/crm.lead.add.json’;
// Формируем параметры для создания лида в переменной $queryData
$queryData = http_build_query(array(
‘fields’ => array(
// Устанавливаем название для заголовка лида
‘TITLE’ => ‘Напишите нам’,
‘NAME’ => $firstName,
‘PHONE’ => Array(
«n0» => Array(
«VALUE» => $tel,
«VALUE_TYPE» => «WORK»,
),
),
‘EMAIL’ => Array(
«n0» => Array(
«VALUE» => $mail,
«VALUE_TYPE» => «WORK»,
),
),
‘COMMENTS’ => $message,
),
‘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’].»
«;
}
}