Поиск
Искать в:
Все решения  
  • Все решения
  • Интернет-магазины
    • Аспро: Лайтшоп
    • Аспро: Максимум
    • Аспро: Шины и диски 2.0
    • Аспро: Next
    • Аспро: Оптимус
    • Аспро: Шины и диски, интернет-магазин
    • Аспро: Интернет-магазин
    • Аспро: Крутой шоп
    • Аспро: Маркет
  • Корпоративные сайты
    • Аспро: Корпоративный сайт 3.0
    • Аспро: Корпоративный сайт 2.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.




  • Комментарии
Загрузка комментариев...

Тэги

1C cdn custom custom.css google maps include.php SEO seo sitemap sku template.php title автокомпозит авторизация адаптивная верстка аксессуары активация 1С-Битрикс акции Аспро: Медицинский центр 2.0 баннеры без доставки бренды быстрый заказ валюта веб-формы видео вкладки водяной знак главная страница диапазон добавить поле заголовки изменение текста в блоке изображения Интернет-магазин как загрузить каптча капча карта карточка товара карточка услуги каталог товаров классы стилей ключевые слова кодировка количество товара конвертация валюты контакты корзина левое меню личный кабинет логотип магазины маска телефона мегаменю медиабиблиотека меню местоположения много модули модуль настроек название сайта наличие настройка валют настройка веб-форм настройка инфоблоков настройка компонентов настройка свойств настройки доступа настройки инфоблока настройки магазина настройки модулей настройки раздела нет в наличии новости номера обновление платформы обновление решения обратный звонок ограничения округление скидок основной баннер отзывы отзывы о товаре отображение свойств отображение товаров отсутствующие товары на складах оформление заказа переустановка решения персональные рекомендации платежные системы подписка на товар подразделы каталога поиск покупка в 1 клик пользовательские свойства поля похожие товары почта почтовые уведомления почтовые шаблоны привязать товары проекты разделы каталога разработчикам региональные скидки регистрация резервное копирование свойства заказа свойства инфоблока свойства товара связанные товары символьный код скидки скидки на товар скорость загрузки сайта скрывать анонс бренда скрывать изображение модели сортировка социальные сервисы список пользователей способы доставки сравнение товаров ссылка статистика структура сайта счетчики тайтл телефон тизеры типы цен товары на складах торговые предложения умный фильтр услуги установка решения уязвимости файлы и папки форма CRM формы формы на инфоблоках формы обратной связи формы редактирования форум хлебные крошки цены чпу Шины и Диски элементы в разделе