D7-crm

Тел: +34624100225 +79262036707
  • Главная
  • Услуги
    • Внедрение amoCRM
    • Внедрение Битрикс24
    • Интеграции CRM
    • Техническая поддержка CRM
    • Обучение работе в CRM
  • Лицензирование
    • Лицензии amoCRM
    • Лицензии Битрикс24
  • О нас
    • Кейсы
    • Блог про автоматизацию
  • Контакты
    • Вакансии
VPN нового поколения
Среда, 09 марта 2022 / Опубликовано в Apix-drive, Без рубрики, Битрикс24

Веб-формы, лиды и сквозная аналитика

Время на прочтение: 2 минут(ы)

Как я боролась с веб-формами, чтобы по ним создавался в битриксе лид с заполненной сквозной аналитикой
====quote====
У заказчика коробочный битрикс24, по системе многосайтовости на одном ядре развернуто шаблонное решение Аспро.Корп2, в нем формы обратной связи сделаны веб-формами.
Задача: по заполнению веб-формы создавать лид в битрикс24 с заполненной сквозной аналитикой.
=============
1. Сквозная аналитика определяется по параметру utm_source. Сохраняем ее в куку alpha_utm_source.
====code====

if(isset($_GET["utm_source"]) && !empty($_GET["utm_source"])):
    $_SESSION["alpha_utm_source"] = str_replace("-", "_", $_GET["utm_source"]);
    setcookie(
      "alpha_utm_source",
      $_GET["utm_source"],
      time() + (10 * 365 * 24 * 60 * 60)
    );
endif;

=============
2. подключаем в настройках модуля веб-форм CRM
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=48&LESSON_ID=3642
====quote====
но, с%ка, нет возможности штатно передать метку, нет возможности штатно указать сквозную аналитику
=============

3. в веб-форме делаем поле UTM-SOURCE типа hidden

4. обработчик в init.php, который выцарапывает (потому что это тоже не оч просто) куку alpha_utm_source, и если такая есть, то заполняет поле UTM-SOURCE в веб-форме
====code====

AddEventHandler('form', 'onAfterResultAdd', 'MyAfterResultAdd',1);
function MyAfterResultAdd($webFormId, $resultId){ 
    CModule::IncludeModule('form');
    $arForm = CForm::GetSiteArray($webFormId);
    if(in_array("1c",$arForm)){ //cite 1c
      $rsResult = CFormResult::GetByID($resultId);
      $arResult = $rsResult->Fetch();
      $rs = CFormField::GetBySID("UTM_SOURCE", $arResult["FORM_ID"]);
      $arFieldUtm = $rs->Fetch();
      if(!empty($arResult["STAT_SESSION_ID"]) && !empty($arFieldUtm["ID"]) && CModule::IncludeModule('statistic')){   
         if ($rs = CSession::GetByID($arResult["STAT_SESSION_ID"])){
                 $arSession = $rs->Fetch();
                 if(!empty($arSession["LAST_HIT_ID"])){
                if ($rs = CHit::GetByID($arSession["LAST_HIT_ID"])){
                   $arHit = $rs->Fetch();
                   if(!empty($arHit["COOKIES"])){
                      $arCookies = explode(PHP_EOL, $arHit["COOKIES"]);             
                      foreach ($arCookies as $str) {
                         if(strpos($str, "[alpha_utm_source]") !==false){
                            $cookieValue = trim(str_replace("[alpha_utm_source] = ", "", $str));
                            break;
                         }
                      }
                      if(empty($cookieValue)){
                        $cookieValue = "1ccite";
                  }
                  CFormResult::SetField($resultId, "UTM_SOURCE", [$arFieldUtm["ID"]=>$cookieValue]);
                   }
            }
                }
         }
      }
      
   }

}

=============
5. в лиде создаем свойство с названием UTM_SOURCE_COPY типа строка
6. в настройке веб-формы передаем лид и делаем сопоставление свойства лида UTM_SOURCE_COPY полю веб-формы UTM_SOURCE
7. при создании лида делаем обработчик, который тоже размещаем в init.php, который из нашего свойства проставляет UTM-метку
====code====

AddEventHandler("crm", "OnBeforeCrmLeadAdd", "MyOnBeforeCrmLeadAdd");
function MyOnBeforeCrmLeadAdd(&$arFields) {

   if(!empty($arFields["UF_CRM_1640828446"])){ //свойство UTM_SOURCE_COPY
      $arFields["UTM_SOURCE"] = $arFields["UF_CRM_1640828446"];
   }
}

=============
8. и тут еще допилить (доделаю в ближайшие дни), чтоб по utm-метке сквозная ставилась, потому что она не проставляется, хотя в системе (в настройках сквозной) указана
Подробнее…

С пометкой под: Битрикс24

Что вы можете прочитать дальше

Новые счета в Битрикс24.CRM | «Экспресс Платежи»
Свой вид карточки CRM для каждого отдела или сотрудника в Битрикс24 уже доступно! Обзор, Настройка.
Копирование групп и проектов

Добавить комментарий

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

Категории

  • 1С
  • Albato
  • amoCRM
  • Apix-drive
  • CRM
  • Profitbase
  • Roistat
  • U-ON Travel
  • Без рубрики
  • Битрикс24

Услуги

Внедрение amoCRM
Заказать интеграцию
Заказать внедрение
Внедрение Битрикс24

Получить консультацию


    [cf7ic]

    Поиск

    Отраслевая экспертиза

    • Строительство
    • Салоны красоты
    • Онлайн образование
    • Туризм
    • Недвижимость

    Политика конфиденциальности

    Пользовательское соглашение

    Контакты

    T +34624100225
    Email: s@d7-crm.ru

    D7-CRM
    г. Москва

    Открыть Яндекс карты

    меню

    D7-crm

    © 2016-2025 All rights reserved. D7-CRM.

    НАВЕРХ