Свежие статьи

Битрикс24 интеграция с сайтом, с Contact Form7, с WordPress

Битрикс24 интеграция с сайтом. Как соединить Битрикс24 и Contact Form7 WordPress
Сегодня я расскажу, как интегрировать в Битрикс24, Contact Form7 WordPress. Наша задача будет состоять в том, чтобы получать данные из любых сайтов и все собирать в одном месте.

Как интегрировать Битрикс24 contact form7

Сначала, в первой части видео, мы зарегистрируем себе CRM, и я покажу самый простой вариант интеграции.

Создадим сайт на платформе самой CRM Битрикс24 и установим на него виджет заказа обратного звонка, онлайн чата, и контактной формы. С недавнего времени появилась такая возможность и не все еще о ней знают.

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

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

Смотрим видео. Код который будет нам необходим выкладываю ниже

Код для интеграции на одну форму

И так самый первый код, если Вы используете 1 форму Contact Form на сайте WordPress. Вставить его нужно в конец файла functions.php

Таблица полей для сопоставления тут

Поменяем данные в коде на свои

  1. Строка 6 меняем на свой хост (ВАШ.bitrix24.ru заменить на свой хост )
  2. Строка 11 меняем на свой логин (ВАШ ЛОГИН на свой логин)
  3. Строка 12 пишем свой пароль (ВАШ ПАРОЛЬ)
  4. Строка 17 пишем имя формы (Контактная форма 1 меняем на свою)
  5. С 21 по 24 строку пишем свои значения из Contact Form7 (внимательно смотрим видео)
  6.  

 

//Вызываем функцию для перехвата данных
add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' );
function your_wpcf7_mail_sent_function( $contact_form ) {
 
   //подключение к серверу CRM
   define('CRM_HOST', 'ВАШ.bitrix24.ru'); // Ваш домен CRM системы
   define('CRM_PORT', '443'); // Порт сервера CRM. Установлен по умолчанию
   define('CRM_PATH', '/crm/configs/import/lead.php'); // Путь к компоненту lead.rest
 
   //авторизация в CRM
   define('CRM_LOGIN', 'ВАШ ЛОГИН'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', 'ВАШ ПАРОЛЬ'); // Пароль пользователя Вашей CRM по управлению лидами
 
   //перехват данных из Contact Form 7
   $title = $contact_form->title;
   $posted_data = $contact_form->posted_data;
   if ('Контактная форма 1' == $title ) { //Вместо "Контактная форма 1" необходимо указать название Вашей контактной формы
       $submission = WPCF7_Submission::get_instance();
       $posted_data = $submission->get_posted_data();
       //далее мы перехватывает введенные данные в Contact Form 7
       $firstName = $posted_data['your-name']; //перехватываем поле [your-name]
       $message = $posted_data['your-message']; //перехватываем поле [your-message]
	   $myemail = $posted_data['your-email'];
	   $myphone = $posted_data['your-phone'];
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Лид с формы агента', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
		  'EMAIL_WORK' => $myemail,
		  'PHONE_WORK' => $myphone
       );
 
       //передача данных из Contact Form 7 в Bitrix24
       if (defined('CRM_AUTH')) {
          $postData['AUTH'] = CRM_AUTH;
       } else {
          $postData['LOGIN'] = CRM_LOGIN;
          $postData['PASSWORD'] = CRM_PASSWORD;
       }
 
       $fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
       if ($fp) {
          $strPostData = '';
          foreach ($postData as $key => $value)
             $strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);
 
          $str = "POST ".CRM_PATH." HTTP/1.0\r\n";
          $str .= "Host: ".CRM_HOST."\r\n";
          $str .= "Content-Type: application/x-www-form-urlencoded\r\n";
          $str .= "Content-Length: ".strlen($strPostData)."\r\n";
          $str .= "Connection: close\r\n\r\n";
 
          $str .= $strPostData;
 
          fwrite($fp, $str);
 
          $result = '';
          while (!feof($fp))
          {
             $result .= fgets($fp, 128);
          }
          fclose($fp);
 
          $response = explode("\r\n\r\n", $result);
 
          $output = '<pre>'.print_r($response[1], 1).'</pre>';
       } else {
          echo 'Connection Failed! '.$errstr.' ('.$errno.')';}
    }
 
}

 

Для добавления своих полей пользуйтесь этой табличкой

Таблица 1: Параметры для лидов
ПАРАМЕТР ОПИСАНИЕ
LOGIN Логин
PASSWORD Пароль
TITLE Заголовок лида
HONORIFIC Тип обращения к клиенту
NAME Имя клиента
LAST_NAME Фамилия клиента
SECOND_NAME Отчество клиента
BIRTHDATE Дата рождения клиента
ADDRESS Адрес клиента
ADDRESS_2 Вторая строка адреса клиента
ADDRESS_CITY Город клиента
ADDRESS_COUNTRY Страна клиента
ADDRESS_COUNTRY_CODE Код страны клиента
ADDRESS_POSTAL_CODE Почтовый индекс клиента
ADDRESS_PROVINCE Регион клиента
ADDRESS_REGION Район клиента
COMPANY_ID Привязка лида к компании
COMPANY_TITLE Название компании, привязанной к лиду
CONTACT_ID Привязка лида к контакту
POST Должность клиента
COMMENTS Комментарий клиента
SOURCE_DESCRIPTION Дополнительно о статусе
STATUS_DESCRIPTION Дополнительно об источнике
OPPORTUNITY Возможная сумма сделки
CURRENCY_ID Валюта
PRODUCT_ID Продукт
SOURCE_ID Источник
STATUS_ID Статус
ASSIGNED_BY_ID Ответственный за клиента
PHONE_WORK Рабочий телефон
PHONE_MOBILE Мобильный телефон
PHONE_FAX Номер факса
PHONE_HOME Домашний телефон
PHONE_PAGER Номер пейджера
PHONE_OTHER Другой телефон
WEB_WORK Корпоративный сайт
WEB_HOME Личная страница
WEB_FACEBOOK Страница Facebook
WEB_LIVEJOURNAL Страница LiveJournal
WEB_TWITTER Микроблог Twitter
WEB_OTHER Другой сайт
EMAIL_WORK Рабочий e-mail
EMAIL_HOME Частный e-mail
EMAIL_OTHER Другой e-mail
M_SKYPE Контакт Skype
IM_ICQ Контакт ICQ
IM_MSN Контакт MSN/Live!
IM_JABBER Контакт Jabber
IM_OTHER Другой контакт
UTM_CAMPAIGN Обозначение рекламной кампании
UTM_CONTENT Содержание кампании
UTM_MEDIUM Тип трафика
UTM_SOURCE Рекламная система
UTM_TERM Ключевое слова/условия поиска

или по ссылочке https://gettotop.ru/crm/tablitsa-parametrov-iz-sootvetstvuyushhih-spravochnikov-bitrix24/

Код для интеграции на две формы

По аналогии с первой формой

  1. Строка 6 меняем на свой хост (ВАШ.bitrix24.ru заменить на свой хост )
  2. Строка 11 меняем на свой логин (ВАШ ЛОГИН на свой логин)
  3. Строка 12 пишем свой пароль (ВАШ ПАРОЛЬ)
  4. Строка 17 пишем имя формы (Контактная форма 1 меняем на свою)
  5. С 27 по 29 строку пишем свои значения из Contact Form7 (внимательно смотрим видео)
  6. Строка 73 Имя второй своей формы
  7. С 83 по 85 строку проверьте значения из своей формы, если нужно добавить добавьте по инструкции в видео
//Вызываем функцию для перехвата данных
add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' );
function your_wpcf7_mail_sent_function( $contact_form ) {

//подключение к серверу CRM
define('CRM_HOST', 'ВАШ ДОМЕН'); // Ваш домен CRM системы
define('CRM_PORT', '443'); // Порт сервера CRM. Установлен по умолчанию
define('CRM_PATH', '/crm/configs/import/lead.php'); // Путь к компоненту lead.rest

//авторизация в CRM
define('CRM_LOGIN', 'ВАШ ЛОГИН'); // Логин пользователя Вашей CRM по управлению лидами
define('CRM_PASSWORD', 'ВАШ ПАРОЛЬ'); // Пароль пользователя Вашей CRM по управлению лидами

//перехват данных из Contact Form 7
$title = $contact_form->title;
$posted_data = $contact_form->posted_data;
if ('Контактная форма 1' == $title ): { //Вместо "Контактная форма 1" необходимо указать название Вашей контактной формы
$submission = WPCF7_Submission::get_instance();
$posted_data = $submission->get_posted_data();

//далее мы перехватывает введенные данные в Contact Form 7
$firstName = $posted_data['your-name']; //перехватываем поле [your-name]
$emailmessage = $posted_data['your-email']; //перехватываем поле [your-message]

//сопостановление полей Bitrix24 с полученными данными из Contact Form 7
$postData = array(
'TITLE' => 'Лид с первой формы', // Установить значение свое значение
'NAME' => $firstName,
'EMAIL_WORK' => $emailmessage,
);

//передача данных из Contact Form 7 в Bitrix24
if (defined('CRM_AUTH')) {
$postData['AUTH'] = CRM_AUTH;
} else {
$postData['LOGIN'] = CRM_LOGIN;
$postData['PASSWORD'] = CRM_PASSWORD;
}

$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp) {
$strPostData = '';
foreach ($postData as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);

$str = "POST ".CRM_PATH." HTTP/1.0\r\n";
$str .= "Host: ".CRM_HOST."\r\n";
$str .= "Content-Type: application/x-www-form-urlencoded\r\n";
$str .= "Content-Length: ".strlen($strPostData)."\r\n";
$str .= "Connection: close\r\n\r\n";

$str .= $strPostData;

fwrite($fp, $str);

$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);

$response = explode("\r\n\r\n", $result);

$output = '
.print_r($response[1], 1).
';
} else {
echo 'Connection Failed! '.$errstr.' ('.$errno.')';}
};

//Начало второй формы
elseif('Контактная форма 2' == $title ): { //Вместо "Контактная форма 2" необходимо указать название Вашей контактной формы
$submission = WPCF7_Submission::get_instance();
$posted_data = $submission->get_posted_data();

//далее мы перехватывает введенные данные в Contact Form 7
$firstName = $posted_data['your-name']; //перехватываем поле [your-name]
$emailmessage = $posted_data['your-email']; //перехватываем поле [your-message]

//сопостановление полей Bitrix24 с полученными данными из Contact Form 7
$postData = array(
'TITLE' => 'Лид со второй формы', // Установить значение свое значение
'NAME' => $firstName,
'EMAIL_WORK' => $emailmessage,
);

//передача данных из Contact Form 7 в Bitrix24
if (defined('CRM_AUTH')) {
$postData['AUTH'] = CRM_AUTH;
} else {
$postData['LOGIN'] = CRM_LOGIN;
$postData['PASSWORD'] = CRM_PASSWORD;
}

$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp) {
$strPostData = '';
foreach ($postData as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);

$str = "POST ".CRM_PATH." HTTP/1.0\r\n";
$str .= "Host: ".CRM_HOST."\r\n";
$str .= "Content-Type: application/x-www-form-urlencoded\r\n";
$str .= "Content-Length: ".strlen($strPostData)."\r\n";
$str .= "Connection: close\r\n\r\n";

$str .= $strPostData;

fwrite($fp, $str);

$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);

$response = explode("\r\n\r\n", $result);

$output = print_r($response[1], 1);
} else {
echo 'Connection Failed! '.$errstr.' ('.$errno.')';
}
}; //Конец второй



 endif;
}

 

Код для третьей и последующих форм

Меняем только названия форм, и полей. Вставляем между «//Конец второй формы и endif в 127 строку» и каждая последующая соответственно перед endif

//Начало Новой формы формы
elseif('НОВАЯ КОНТАКТНАЯ ФОРМА' == $title ): { //Вместо "НОВАЯ КОНТАКТНАЯ ФОРМА" необходимо указать название Вашей контактной формы
$submission = WPCF7_Submission::get_instance();
$posted_data = $submission->get_posted_data();

//далее мы перехватывает введенные данные в Contact Form 7
$firstName = $posted_data['your-name']; //перехватываем поле [your-name]
$emailmessage = $posted_data['your-email']; //перехватываем поле [your-message]

//сопостановление полей Bitrix24 с полученными данными из Contact Form 7
$postData = array(
'TITLE' => 'Лид со второй формы', // Установить значение свое значение
'NAME' => $firstName,
'EMAIL_WORK' => $emailmessage,
);

//передача данных из Contact Form 7 в Bitrix24
if (defined('CRM_AUTH')) {
$postData['AUTH'] = CRM_AUTH;
} else {
$postData['LOGIN'] = CRM_LOGIN;
$postData['PASSWORD'] = CRM_PASSWORD;
}

$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp) {
$strPostData = '';
foreach ($postData as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);

$str = "POST ".CRM_PATH." HTTP/1.0\r\n";
$str .= "Host: ".CRM_HOST."\r\n";
$str .= "Content-Type: application/x-www-form-urlencoded\r\n";
$str .= "Content-Length: ".strlen($strPostData)."\r\n";
$str .= "Connection: close\r\n\r\n";

$str .= $strPostData;

fwrite($fp, $str);

$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);

$response = explode("\r\n\r\n", $result);

$output = print_r($response[1], 1);
} else {
echo 'Connection Failed! '.$errstr.' ('.$errno.')';
}
}; //Конец Новой формы

 

Если что то не получается, или наоборот все прошло учпечно, пишем в комментах. Битрикс24 интеграция с сайтом, ни чего сложного. Кому нужна индивидуальная консультация тут https://e-integrate.ru/bronirovanie-konsultatsii-po-skajpu/

Записаться на мои курсы и попробовать бесплатно тут https://e-integrate.ru

Узнайте первым о выходе новых статей

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

31 комментарий к “Битрикс24 интеграция с сайтом, с Contact Form7, с WordPress”

  1. Станислав

    Добрый день!
    Делал для себя передачу данных из формы с кучей полей в -> Битрикс.
    Задача была объединить данные полученные из формы Contact Form7 в Одно поле комментарий в битриксе. Так как из формы передаются только данные, надо было добавить оформление и описание данным которые попадают в поле комментарий битрикса
    Весь код повторно писать не буду, только свои изменения:

    //далее мы перехватывает введенные данные в Contact Form 7
    $firstName = $posted_data[‘text-859’]; //перехватываем поле [your-name]
    $mymessage = $posted_data[‘textarea-430′]; //перехватываем поле [your-message]
    $myemail = $posted_data[’email-839′];
    $myphone = $posted_data[‘tel-43’];
    $myp = $posted_data[‘number-518’];
    $mypp = $posted_data[‘number-519’];
    $mypq = $posted_data[‘number-520’];
    $myv = $posted_data[‘number-521’];
    $myf = $posted_data[‘number-522’];
    $myr = $posted_data[‘number-523’];
    $mye = $posted_data[‘number-524’];
    $myc = $posted_data[‘number-525’];
    $myx = $posted_data[‘number-526’];
    $myqs = $posted_data[‘number-527’];
    $myqz = $posted_data[‘number-528’];
    $mymy = $posted_data[‘number-529’];
    $myqw = $posted_data[‘number-530’];
    $myqa = $posted_data[‘number-531’];

    //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
    $postData = array(
    ‘TITLE’ => ‘Лид формы со странички’, // Установить значение свое значение
    ‘NAME’ => $firstName,
    ‘COMMENTS’ => $mymessage .’Мерки клиента для пошива на заказ:‘ .’Полуобхват груди СГ,: ‘ .$myp .’Полуобхват талии СТ,: ‘ .$mypp .’Полуобхват бедер СБ,: ‘ .$mypq .’Ширина груди ШГ,: ‘ .$myv .’Ширина груди вторая ШГ 2: ‘ .$myf .’Ширина спины ШС,: ‘ .$myr .’Длина спины ДТС,: ‘ .$mye .’Высота груди ВГ,: ‘ .$myc .’Длина переда до талии ДТП,: ‘ .$myx .’Ширина плеча ШП,: ‘ .$myqs .’Длина рукава ДР,: ‘ .$myqz .’Обхват плеча ОП,: ‘ .$mymy .’Длина изделия ДИ,: ‘ .$myqw .’Ваш рост: ‘ .$myqa .’‘,
    ‘EMAIL_WORK’ => $myemail,
    ‘PHONE_WORK’ => $myphone,
    );

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

  2. Здравствуйте, подскажите возможно ли както подключить к вашему коду разгадывание капчи при авторизации, например через ключ antigate или другие.

    Проблема в том что сейчас при первой же авторизации вылезает капча http://prntscr.com/t89bc3 и соответсвенно не происходит авторизации и лид не создается. А так вроде всё работает.

  3. Вроде сделала как вы сказали,но все равно выходит ошибка. С чем она может быть связана?

    На сайте возникла критическая ошибка.

    Узнайте больше про отладку в WordPress.

    1. Возможно. Нужно в контакт форму добавить шорткод который выводит адрес странички. Он выведет его с utm меткой и будет в теле письма. Список шорткодов на страничке автора контакт формы.

  4. Добрый день, Ярослав. Спасибо за вашу работу. Есть вопрос который наверное будет интересен многим. В Contact Form 7 можно использовать следующие служебные теги:
    [_remote_ip] IP-адрес отправителя.
    [_url] URL-адрес контактной формы.
    [_date] Дата отправления.
    [_time] Время отправления.
    [_post_title] Заголовок записи с контактной формой.
    [_post_url] Ссылка на страницу отправки.

    Как можно отправить к примеру тег «[_post_title] Заголовок записи с контактной формой.» в лид. Чтоб было понятно с какой страницы пришла заявка?

        1. Я наверное не понял чего. Мы в контакт форм можем шорткодом вывести адрес странички с которой отправлена форма и заголовок можем и она будет в теле письма, а тело письма мы видим и это легко позволит идентифицировать страничку с которой ушла форма.

          Шорткоды прилагаю ниже
          [_remote_ip] IP-адрес отправителя.
          [_user_agent] User Agent отправителя.
          [_url] URL-адрес контактной формы.
          [_date] Дата отправления.
          [_time] Время отправления.
          [_post_id] ID поста (записи) контактной формы.
          [_post_name] Имя поста (в схеме протокола HTTP ).
          [_post_title] Заголовок записи с контактной формой.
          [_post_url] Ссылка на страницу отправки.
          [_post_author] Имя автора публикации.
          [_post_author_email] Адрес почты автора публикации.

  5. Ярослав, спасибо огромное за Ваш труд! Я по вашим видео сделал и сайт недвижимости на платформе MyHome, и интегрировал его с битрикс24 (и через виджеты, и через форму битрикс, и через форму Contact Form 7). Всё работает как часы. Просто нужно внимательно смотреть и делать всё по шагам!

  6. Станислав

    здравствуйте Ярослав.
    Помогите разобраться, у меня в битрикс не приходят сообщения и добавленное поле город, код редактировал по видео, ошыбок не должно быть:
    Вот часть кода с моими изменениями:
    //далее мы перехватывает введенные данные в Contact Form 7
    $firstName = $posted_data[‘your-name’]; //перехватываем поле [your-name]
    $message = $posted_data[‘your-message’]; //перехватываем поле [your-message]
    $myemail = $posted_data[‘your-email’];
    $myphone = $posted_data[‘tel-767’];
    $myrcity = $posted_data[‘city-857’];

    //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
    $postData = array(
    ‘TITLE’ => ‘Лид с формы Выставки’, // Установить значение свое значение
    ‘NAME’ => $firstName,
    ‘COMMENTS’ => $message,
    ‘EMAIL_WORK’ => $myemail,
    ‘PHONE_WORK’ => $myphone,
    ‘ADDRESS_CITY’ => $myrcity
    );

  7. Окей, а как это дело сделать не лидом, а в сделку отправить? Кстати, индекс (ADDRESS_POSTAL_CODE) не принимается в лид (хотя если соединить с адресом через конкатенацию , то все ок).

  8. Алексей

    Здравствуйте, подскажите, не пробовали файл передать в битрикс? или ссылку на файл?

  9. Други и подруги! Сегодня проверяли по просьбе телезрителей в прямом эфире работу этого кода. ВСЕ РАБОТАЕТ!!! У кого не работает внимательно пишите логин пароль, адрес аккаунта без http, в общем делайте все как в видео, при копировании копируйте все точно. Еще раз КОД РАБОЧИЙ у кого не работает 7 раз отрежьте 1 проверьте, ну или как то так.

  10. Получилось ли синтегрировать форму в элементор с битрикс? голову сломала как это сделать, пока не придумала …

  11. Дмитрий

    Добрый день, воспользовался вашим скриптом и столкнулся с такой вот ошибкой
    Ваши изменения в коде PHP были отменены из за ошибки на строке 90 файла wp-content/themes/awps/functions.php. Исправьте и попробуйте пересохранить.

    syntax error, unexpected ‘elseif’ (T_ELSEIF)

  12. Здравствуйте Ярослав. А какой код будет если необходимо интегрировать формы созданные в самом редакторе Elementor, а не через плагин contact form 7

  13. Андрей

    Здравствуйте Ярослав. Сделал все, как указано у Вас в видео, здесь тоже посмотрел. Сделал сначала на 4 формы — не работает. Сделал на одну потом, чтобы проверить работоспособность. Опять не работает. Пароли, переменные — все корректно. Не пойму в чем дело. Сначала встраивал через редактор Word Pres, затем через хостинг через файловый менеджер. Ничего не выходит. Тема BeTheme, сайт на Elementor. https://ворота-навесы.рус (кстати делал по Вашим урокам, как и все другие))). Не пойму в чем дело.

    Также пытался установить виджет онлайн помощника, код через редактор поместил в «Header» — он не работал. Потом поставил код в настройки темы Be Theme, там где ремаркетинг, Google Analytics, и пиксель фейсбук. Виджет заработал. У меня сложилось впечатление, что попросту тема не читает код который устанавливается, как будто она его не видит. Ярослав, подскажите пожалуйста, что можно предпринять в этом случае? Уже реально не знаю что делать, все перепробовал. Благодарю! Вот код:

    //Вызываем функцию для перехвата данных
    add_action( ‘wpcf7_mail_sent’, ‘your_wpcf7_mail_sent_function’ );
    function your_wpcf7_mail_sent_function( $contact_form ) {

    //подключение к серверу CRM
    define(‘CRM_HOST’, ‘prok24.bitrix24.ru’); // Ваш домен CRM системы
    define(‘CRM_PORT’, ‘443’); // Порт сервера CRM. Установлен по умолчанию
    define(‘CRM_PATH’, ‘/crm/configs/import/lead.php’); // Путь к компоненту lead.rest

    //авторизация в CRM
    define(‘CRM_LOGIN’, ‘79253839781@yandex.ru’); // Логин пользователя Вашей CRM по управлению лидами
    define(‘CRM_PASSWORD’, ‘Kisel4704940’); // Пароль пользователя Вашей CRM по управлению лидами

    //перехват данных из Contact Form 7
    $title = $contact_form->title;
    $posted_data = $contact_form->posted_data;
    if (‘Ворота-Навесы Обратный звонок’ == $title ) { //Вместо «Контактная форма 1» необходимо указать название Вашей контактной формы
    $submission = WPCF7_Submission::get_instance();
    $posted_data = $submission->get_posted_data();
    //далее мы перехватывает введенные данные в Contact Form 7
    $firstName = $posted_data[‘text-694’]; //перехватываем поле [your-name]
    $message = $posted_data[‘your-message’]; //перехватываем поле [your-message]
    $myemail = $posted_data[‘your-email’];
    $myphone = $posted_data[‘tel-553’];

    //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
    $postData = array(
    ‘TITLE’ => ‘Лид с формы обратного вызова’, // Установить значение свое значение
    ‘NAME’ => $firstName,
    ‘COMMENTS’ => $message,
    ‘EMAIL_WORK’ => $myemail,
    ‘PHONE_WORK’ => $myphone
    );

    //передача данных из Contact Form 7 в Bitrix24
    if (defined(‘CRM_AUTH’)) {
    $postData[‘AUTH’] = CRM_AUTH;
    } else {
    $postData[‘LOGIN’] = CRM_LOGIN;
    $postData[‘PASSWORD’] = CRM_PASSWORD;
    }

    $fp = fsockopen(«ssl://».CRM_HOST, CRM_PORT, $errno, $errstr, 30);
    if ($fp) {
    $strPostData = »;
    foreach ($postData as $key => $value)
    $strPostData .= ($strPostData == » ? » : ‘&’).$key.’=’.urlencode($value);

    $str = «POST «.CRM_PATH.» HTTP/1.0\r\n»;
    $str .= «Host: «.CRM_HOST.»\r\n»;
    $str .= «Content-Type: application/x-www-form-urlencoded\r\n»;
    $str .= «Content-Length: «.strlen($strPostData).»\r\n»;
    $str .= «Connection: close\r\n\r\n»;

    $str .= $strPostData;

    fwrite($fp, $str);

    $result = »;
    while (!feof($fp))
    {
    $result .= fgets($fp, 128);
    }
    fclose($fp);

    $response = explode(«\r\n\r\n», $result);

    $output = ‘<pre>’.print_r($response[1], 1).'</pre>’;
    } else {
    echo ‘Connection Failed! ‘.$errstr.’ (‘.$errno.’)’;}
    }

    }

    1. Андрей, спасибо! Я проверил действительно в коде гутенберг поменял ковычки на символы. Из админки все показывал правильно а людям с подмененными ковычками, все поправил. Попробуйте теперь.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *