Наш модуль - это простое и эффективное решение для генерации страниц настроек ваших модулей в Битрикс. Он поддерживает несколько табов и группировку свойств, что делает процесс настройки более удобным и легким.
Модуль предоставляет альтернативу классу CModuleOptions, который многие разработчики используют для генерации настроек своих модулей. Он также использует библиотеку интерфейсов 1С-Битрикс, что обеспечивает максимальную совместимость и надежность.
Данный модель сделан как альтернатива установки через composer. Весь используемый в модуле код выложен на github, что позволяет проверить его на безопасность, или добавить правки при необходимости.
В файле настроек вашего модуля подключаете текущий модуль и вызываете с нужными параметрами:
Bitrix\Main\Loader::includeModule('mpm.options'); Gelion\BitrixOptions\Form::generate('youmodule.id', $options); |
Важно
Минимально необходимая версия php для работы модуля соответствует требованиями bitrix.
Создание табов и групп
Пример массива "$options" для создания вкладки с группой опций:
$options = [ [ 'DIV' => 'settings', 'TAB' => 'Новая вкладка', 'TITLE' => 'Новая вкладка', 'ICON' => '', 'GROUPS' => [ 'GROUP_CODE' => [ 'TITLE' => 'Название группы', 'OPTIONS' => [] ], ], ], ]; |
В массив "OPTIONS" группы передаётся массив нужных опций.
Строка
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'STRING', 'FIELDS' => [ 'TITLE' => 'Поле "Строка"', 'DEFAULT' => 'Значение по умолчанию', 'NOTES' => 'Это подсказка к полю "Строка"', 'PLACEHOLDER' => 'Это плейсхолдер к полю "Строка"', 'TAG' => 'Текст на теге', 'READONLY' => false, 'DISABLED' => false, 'AUTOCOMPLETE' => false, ], ], |
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'NUMBER', 'FIELDS' => [ 'TITLE' => 'Поле "Число"', 'DEFAULT' => 42, 'NOTES' => 'Это подсказка к полю "Число"', 'PLACEHOLDER' => 'Это плейсхолдер к полю "Число"', 'TAG' => 'Текст на теге', 'READONLY' => false, 'DISABLED' => false, 'AUTOCOMPLETE' => false, 'STEP' => 1, 'MIN' => 0, 'MAX' => 100, ], ], |
Текст
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'TEXTAREA', 'FIELDS' => [ 'TITLE' => 'Поле "Текст"', 'DEFAULT' => 'Значение по умолчанию', 'NOTES' => 'Это подсказка к полю "Текст"', 'PLACEHOLDER' => 'Это плейсхолдер к полю "Текст"', 'TAG' => 'Текст на теге', 'READONLY' => false, 'DISABLED' => false, 'AUTOCOMPLETE' => false, 'COLS' => 5, 'ROWS' => 10, ], ], |
Чекбокс
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'CHECKBOX', 'FIELDS' => [ 'TITLE' => 'Поле "Чекбокс"', 'DEFAULT' => true, 'NOTES' => 'Это подсказка к полю "Чекбокс"', ], ], |
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'COLORPICKER', 'FIELDS' => [ 'TITLE' => 'Поле "Выбор цвета"', 'NOTES' => 'Это подсказка к полю "Выбор цвета"', 'DEFAULT' => '#FFFFFF', ], ], |
Выпадающий список
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'DROPDOWN', 'FIELDS' => [ 'TITLE' => 'Поле "Список"', 'DEFAULT' => 'val-2', 'NOTES' => 'Это подсказка к полю "Список"', 'TAG' => 'Текст на теге', 'OPTIONS' => [ [ 'TITLE' => 'Первое свойство', 'VALUE' => 'val-1', ], [ 'TITLE' => 'Второе свойство', 'VALUE' => 'val-2', ], ], ], ], |
Множественный список
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'MULTISELECT', 'FIELDS' => [ 'TITLE' => 'Поле "множественный список"', 'DEFAULT' => serialize(['val-1','val-2']), 'NOTES' => 'Это подсказка к полю "множественный список"', 'TAG' => 'Текст на теге', 'OPTIONS' => [ [ 'TITLE' => 'Первое свойство', 'VALUE' => 'val-1', ], [ 'TITLE' => 'Второе свойство', 'VALUE' => 'val-2', ], ], ], ], |
HTML-редактор
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'HTMLEDITOR', 'FIELDS' => [ 'TITLE' => 'Поле "HTML-редактор"', 'NOTES' => 'Это подсказка к полю "HTML-редактор"', ], 'PARAMS' => [ 'WIDTH' => '100%', 'HEIGHT' => '500', 'PHP' => false, 'TASKBAR' => false, ] ], |
Условия
'PROP_ID' => [ 'SORT' => 100, 'TYPE' => 'CONDITIONS', 'FIELDS' => [ 'TITLE' => 'Поле "Условия"', 'NOTES' => 'Это подсказка к полю "Условия"', ], ], |
Модификаторы опций
Также можно передать дополнительные параметры, влияющие на отображение формы на странице. Более подробно о принимаемых параметрах и их значениях можно узнать в документации Bitrix.
'PROP_ID' => [ 'FIELDS' => [], 'PARAMS' => [ 'DISPLAY' => 'block', 'WIDTH' => 'wd', 'HEIGHT' => 'md', 'COLOR' => 'default', 'TAGCOLOR' => 'default', 'MODIFICATOR' => false, ], ], |
Свои типы опций
Чтобы создать свой тип опции нужно создать свой класс, унаследовавшись от класса Gelion\BitrixOptions\TypeBase и с интерфейсом Gelion\BitrixOptions\TypeInterface. Затем, где-нибудь перед вызовом генератора зарегистрировать сопоставление названий типов, и классов, которые должны быть инициализированы.
Gelion\BitrixOptions\Form::typesRegister([ 'CUSTOM_TYPE' => MyCustomOptionType::class, ]); |
Зарегистрированные типы опций, при совпадении названий будут перебивать стандартные.
Закажите любой модуль у нас на сайте с бесплатной установкой и гарантией 14 дней
Мы работаем с физическими и юридическими лицами. И предоставляем сразу два варианта оплаты.
- Наличные. Вы подписываете товаросопроводительные документы, расплачиваетесь денежными средствами, получаете товар и чек.
- Безналичный расчет. Принимаем карты Visa и MasterCard. Доступен при курьерской доставке.
Ваш заказ можем доставить собственными ресурсами, при условии вашего нахождения в городе. Либо через 4 варианта доставки:
- Курьерская доставка. Курьерская доставка работает с 9:00 до 19:00. Когда товар поступит на склад, курьерская служба свяжется для уточнения деталей. Специалист предложит выбрать удобное время доставки и уточнит адрес.
- Самовывоз из магазина. Для получения заказа обратитесь к сотруднику в кассовой зоне и назовите номер.
- Сотрудничаем с постаматами. Срок хранения — 3 дня.
- Предоставляем почтовую доставку через почту России. Когда заказ придет в отделение, на ваш адрес придет извещение о посылке. Вскрывать коробку самостоятельно вы можете только после оплаты заказа.
Дополнительная вкладка для размещения информации о товарах, доставке или любого другого важного контента. Поможет вам ответить на интересующие покупателя вопросы и развеять его сомнения в покупке. Используйте её по своему усмотрению.
Вы можете убрать её или вернуть обратно, изменив одну галочку в настройках компонента. Очень удобно.
- Комментарии
- ВКонтакте