• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Поиск Плагин для синхронизации информации Contact Form 7 и Bitrix24

CrazyTenno

Постоялец
Регистрация
20 Авг 2012
Сообщения
40
Реакции
32
Ищу плагин, который позволит передавать информацию из форм плагина CF7 в Битрикс 24.
Само собой имеются платные решения, но к ним прибегать не хочется :)
 
У битрикса есть свои формы, просто интегрируйте их как фрейм на сайт и все
 
В functions.php вставляйте, все остальное с комментариями уже, пишите свои данные

PHP:
//Вызываем функцию для перехвата данных
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', 'login'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', '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]
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Название лида с сайта', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
       );
 
       //передача данных из 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.')';
       }
    }
 
}
 
Ищу плагин, который позволит передавать информацию из форм плагина CF7 в Битрикс 24.
Само собой имеются платные решения, но к ним прибегать не хочется :)
Ну как бы есть такой. Не уверен правда что будет работать, так как достался "случайно" вместе с ключиком.

Contact Form 7 - Bitrix24 CRM - Integration​

Версия: 2.29.0

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

Contact Form 7 - Bitrix24 CRM - Integration​

Версия: 2.29.0

*** Скрытый текст не может быть процитирован. ***
Добрый день.
Можете отправить этот плагин мне. Я новичок тут и не дает скачать.

В functions.php вставляйте, все остальное с комментариями уже, пишите свои данные

PHP:
//Вызываем функцию для перехвата данных
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', 'login'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', '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]
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Название лида с сайта', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
       );
 
       //передача данных из 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.')';
       }
    }
 
}
Я делаю через код но мне возвращает ошибку, Поле источник обязателен для заполнения я заполняю но ошибка не остается.

В functions.php вставляйте, все остальное с комментариями уже, пишите свои данные

PHP:
//Вызываем функцию для перехвата данных
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', 'login'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', '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]
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Название лида с сайта', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
       );
 
       //передача данных из 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.')';
       }
    }
 
}
Пробовал интегрировать через входящий вебхук но не передаются параметры. передается только TITLE все остальные поля пустые

В functions.php вставляйте, все остальное с комментариями уже, пишите свои данные

PHP:
//Вызываем функцию для перехвата данных
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', 'login'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', '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]
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Название лида с сайта', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
       );
 
       //передача данных из 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.')';
       }
    }
 
}

В functions.php вставляйте, все остальное с комментариями уже, пишите свои данные

PHP:
//Вызываем функцию для перехвата данных
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', 'login'); // Логин пользователя Вашей CRM по управлению лидами
   define('CRM_PASSWORD', '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]
 
       //сопостановление полей Bitrix24 с полученными данными из Contact Form 7
       $postData = array(
          'TITLE' => 'Название лида с сайта', // Установить значение свое значение
          'NAME' => $firstName,
          'COMMENTS' => $message,
       );
 
       //передача данных из 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.')';
       }
    }
 
}
Пример кода через вебхук

PHP:
add_action( 'wpcf7_before_send_mail', 'your_wpcf7_mail_sent_function' );
function your_wpcf7_mail_sent_function( $contact_form ) {

    $form_title = $contact_form->title;
    $posted_data = $contact_form->posted_data;
    $submission = WPCF7_Submission::get_instance();
    $posted_data = $submission->get_posted_data();

    $your_name = $posted_data['your-name'];
    $your_phone = $posted_data['your-phone'];

    $queryData = [
        'fields' => [
            "TITLE" => $form_title,
            "NAME" => $your_name,
            'PHONE_WORK' =>
            [
                "VALUE" => $your_phone,
                "VALUE_TYPE" => "WORK"
            ]
        ],
        'params' => ["REGISTER_SONET_EVENT" => "Y"],
    ];

    $json_data = json_encode($queryData);
    $curl = curl_init();

    curl_setopt_array($curl, array(
        CURLOPT_URL => 'https://[ваше_название].bitrix24.ru/rest/[идентификатор_пользователя]/[код_вебхука]/crm.lead.add.json',
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => '',
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 0,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => 'POST',
        CURLOPT_POSTFIELDS => $json_data,
        CURLOPT_SSL_VERIFYPEER => 0,
        CURLOPT_HTTPHEADER => array(
        'Content-Type: application/json',
        ),
    ));
    
    $response = curl_exec($curl);
    curl_close($curl);
    error_log(print_r($response, true));
}
 
Ну как бы есть такой. Не уверен правда что будет работать, так как достался "случайно" вместе с ключиком.

Contact Form 7 - Bitrix24 CRM - Integration​

Версия: 2.29.0

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