Поиск
Искать в:
Все решения  
  • Все решения
  • Интернет-магазины
    • Аспро: Премьер
    • Аспро: Лайтшоп
    • Аспро: Максимум
    • Аспро: Шины и диски 2.0
    • Аспро: Next
    • Аспро: Оптимус
    • Аспро: Шины и диски, интернет-магазин
    • Аспро: Маркет
    • Аспро: Интернет-магазин
    • Аспро: Крутой шоп
  • Корпоративные сайты
    • Аспро: Приорити 2.0
    • Аспро: Корпоративный сайт 3.0
    • Аспро: Корпоративный сайт 2.0
    • Аспро: Стройка 2.0
    • Аспро: Инжиниринг
    • Аспро: Металл
    • Аспро: Digital 2.0
    • Аспро: Детский сад и образовательный центр
    • Аспро: Курорт 2.0
    • Аспро: Ландшафт 2.0
    • Аспро: Автосервис
    • Аспро: Медицинский центр 3.0
    • Аспро: Ландшафт
    • Аспро: Медицинский центр 2.0
    • Аспро: Курорт
    • Аспро: Стройка
    • Аспро: Сайт медицинского центра
    • Аспро: Корпорация
    • Аспро: Корпоративный сайт
    • Аспро: Корпоративный сайт современной компании
    • Аспро: Приорити
    • Аспро: Digital
  • Модули
    • Аспро: Привязка ответственного
    • Аспро: Шинный калькулятор
    • Аспро: Кредитный калькулятор
    • Аспро: Универсальный импорт
  • 1С-Битрикс
    • Общее

Как заменить на сайте вывод попап-форм из решения на формы из Битрикс24

ID статьи: 385 , создана 27 май 2019
Необходимо заменить на сайте вывод попап-форм из решения на формы из Битрикс24. 

Решение

Указанный способ реализации доработки гарантирует его стабильную работу даже после обновления модуля решения. Рассмотрим его работу на примере Аспро: Медицинский центр 2.0 для направления «Терапевтия».

Внимание! Эта инструкция актуальна только для тех форм, у которых прописан параметр «data-event="jqm"».

1. Создайте и настройте CRM-форму в Битрикс24. 

2. Скопируйте код формы для вставки на сайт, типа «Клик по кнопке или ссылке».


Перейдите в настройки сайта в административной части. В разделе «Цели и счетчики», нажмите кнопку «Редактировать» и добавьте в файл со счетчиками скопированный код формы.



Вставленный код формы не содержит кнопки/ссылки для клика. Поэтому обязательно после вставленного кода формы (после закрывающего тега </script>) вставьте следующий код ссылки, в котором замените число 109 на id вашей CRM-формы в Битрикс24.

<a class="b24-web-form-popup-btn-109">Мы перезвоним вам</a>

После добавления кода ссылки, нажмите кнопку «Сохранить».



3. Перейдите в публичную часть сайта. Нажмите на кнопку записи на прием. Убедитесь, что в подвале сайта появилась ссылка, клик по которой вызывает появление CRM-формы из Битрикс24.




4. Чтобы скрыть эту ссылку, вернитесь в административную часть, где вы добавляли код формы и добавить «hidden» в класс ссылки.


5. Далее, необходимо внести изменения в файл шаблона сайта, предназначенный для пользовательских скриптов. Путь к нему в оригинальном шаблоне решения /bitrix/templates/aspro-medc2/js/custom.js.

Вставьте код: 


/* bindings forms triggers and B24 forms */
/* use data-param-id attribute or data-name attribute as a key */
/* use B24 form id as a value */
var formBindings = {
	326: 3,
	'callback': 141,
}

/* click button of B24 form */
$(document).on('click', '[data-event=b24]', function(e){
	var $this = $(this);
	var bind = $this.attr('data-bind');
	if(bind > 0){
		e.preventDefault();

		var $link = $('.b24-web-form-popup-btn-' + bind);
		if($link.length){
			$link[0].click();
		}

		/* unset loading state of button */
		setTimeout(function(){
			$this.closest('.loadings').removeClass('loadings');
		}, 1000);
	}
});

/* unbind jqm events */
$(document).ready(function(){
	if(typeof formBindings === 'object'){
		var keys = Object.keys(formBindings);
		for(var i in keys){
			var id = keys[i];
			var $link = $('[data-event=jqm][data-param-id=' + id + ']');
			if(!$link.length){
				$link = $('[data-event=jqm][data-name=' + id + ']');
			}

			if($link.length){
				var bind = 0;

				if(typeof id === 'number' && id > 0){
					var bind = formBindings[id] > 0 ? formBindings[id] : id;
				}
				else if(typeof id === 'string' && id.length > 0){
					var bind = formBindings[id] > 0 ? formBindings[id] : 0;
				}
		
				if(bind > 0){
					$link.unbind();
					$link.data('event', 'b24');
					$link.attr('data-event', 'b24');
					$link.attr('data-bind', bind);
				}
			}
		}
	}
});



6. Измените объект formsBindings, в котором перечислены связи триггеров форм (кнопки/ссылки, клик по которым открывает попап-окно) на сайте с CRM-формами в Битрикс24. Запись связей на решениях для корпоративных сайтов немного отличается от записи связи на решениях для интернет-магазинов.

Необходимо указать id инфоблока или формы, зависит от того, какой вид форм используется, на инфоблоках или формах. В корпоративных сайтах все триггеры веб-форм имеют атрибут data-param-id, значение которого численно совпадает с идентификатором инфоблока формы на сайте. Например, инфоблок формы «Запись онлайн» на сайте имеет идентификатор 326, а идентификатор аналогичной CRM-формы в Битрикс24 - 3 .


var formsBindings = {
   326: 3,
}; 

Необходимо указать символьный код формы. В интернет магазинах некоторые триггеры имеют атрибут data-param-id, а некоторые вместо него имеют атрибут data-name. Точно определить, значение какого атрибута использовать в описании связи с CRM-формой помогут «Средства разработчика» (нажатием клавиши F12, или вызовом соответсвующего пункта меню в браузере). Например, ссылка «Заказать звонок» на сайте имеет аттрибут data-name="callback", а идентификатор аналогичной CRM-формы в Битрикс24 - 141 .


var formsBindings = {
   'callback': 141,
};

Для описания связей к нескольким формам нужно просто перечислить их все в объекте через запятую.


var formsBindings = {
   326: 3,
   328: 1,
   'callback': 141,
   'ask': 142,
};


7. Убедитесь, что клик по кнопке открывает CRM-форму в Битрикс24.




  • Комментарии
Загрузка комментариев...
Для пользователей

Тэги

1С-Битрикс cdn custom.css Google Fonts google maps init.php js-скрипт SEO sitemap sku template.php title автокомпозит авторизация адаптивная верстка адаптивность таблиц активация 1С-Битрикс акции артикул товара Аспро: Медицинский центр 2.0 баннеры Битрикс24 бренды быстрый заказ валюта видео визуальный редактор вкладки главная страница единицы измерения заголовки задать стили знаки вопроса изменить порядок картинок изображения Интернет-магазин капча карта карта сайта карточка проекта карточка товара каталог товаров каталог услуг кеш классы стилей кодировка количество товара контакты корзина купить в 1 клик левое меню личный кабинет логотип магазины маска телефона медиабиблиотека меню местоположение местоположения модули модуль настроек название сайта настройка валют настройка веб-форм настройка инфоблоков настройка компонентов настройка свойств настройка услуг настройки доступа настройки инфоблока настройки магазина настройки модулей настройки раздела не добавляется товар в корзину нет в наличии новости область поиска обновление платформы обновление решения обратный звонок ограничения описание для анонса основной баннер отзывы отзывы о товаре отображение свойств отображение товаров оформление заказа ошибка 404 персональные рекомендации платежные системы поиск покупка без наличия покупка в 1 клик пользовательские свойства популярные категории похожие товары почтовые уведомления почтовые шаблоны привязать товары проекты проживание разделы каталога разработчикам региональные счетчики регистрация резервное копирование свойства заказа свойства инфоблока свойства товара связанные товары символьный код скидки скидки на товар скорость загрузки сайта скрывать изображение модели сортировка социальные сервисы список заказов список пользователей способы доставки сравнение товаров ссылка статьи структура сайта тайтл текст блока «Характеристики» тизеры типы цен товары на складах товары поиск торговые предложения Триггерные рассылки умный фильтр услуги установка решения уязвимости файлы и папки форма задать вопрос формы формы на инфоблоках формы обратной связи форум футер хлебные крошки цены чпу шаблоны на инфоблоках элементы в разделе