Работа с настройками модуля Битрикс

В Битриксе есть возможность создавать настройки у модулей, чтобы работа модуля могла подстраиваться под нужды конкретного сайта. Если вы уже какое-то время работаете с Битриксом, то наверняка пользовались ими, как минимум у стандартных модулей. Ниже пример настроек главного модуля Битрикс.

Настройки главного модуля Битрикса

Когда вы разрабатываете свой модуль, то практически всегда вам нужно добавлять такой вид управления в своё решение. Но если вы уже работали с этой страницей или только подступаетесь к её созданию, то знаете, что создать страницу настроек не самая простая задача.

Во-первых, очень много лишнего кода. На выходе вам нужно всего лишь получить форму, где есть какие-то поля, переключатели, кнопки. Но для этого вы пишете десятки строчек кода для получения текущих настроек, подключения скриптов, вывода формы, и тому подобного. В то время как смысловую нагрузку несут лишь строчки, где описаны сами поля настроек: их название, код, тип.

Вторая проблема - это вёрстка админки Битрикса. Иногда вы обязаны использовать его html-классы, табличную вёрстку к тому же Битрикс сам подправит структуру файла перед выводом. Эти не очень очевидные и приятные в работе вещи, о которых не хотелось бы думать, тем более что они не служат конечной цели напрямую.

Третья проблема - ланг-файлы. Вы наверняка знаете, что вы должны убирать любые надписи внутри модуля в специальные ланг-файлы, а саму надпись заменять на ключ из массива $MESS, иначе их кодировка поломается и их будет не прочитать. Делать это довольно неудобно, нужно создать ланг-файл, заполнить в нём массив, подключить файл на странице, заменить фразу на код вызова из ланг-массива.

Но мы вывели работу с настройками модулей на новый уровень, где нет всех этих проблем.

Как работать с настройками модулей в конструкторе?

Невероятно легко и просто!

Вы просто "мышкой" указываете название свойства, его код, тип, дополнительные свойства.

Работа с настройками модуля в конструкторе

И вообще ни строчки кода. Вам нужно строковое поле? Создайте строковое поле. Решили сделать его списковым? Просто поменяйте тип и заполните варианты значений.

Кстати, задавать значения для списков тоже невероятно просто, вы можете увидеть это на скрине ниже. Как вы могли заметить, можно даже задавать "динамические" значения, наподобие, списка инфоблоков.

Задание вариантов значений настройки типа список

Резюме

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

Вы можете попробовать создать настройки для своя модуля бесплатно прямо сейчас.

Дополнительно

А вот так можно получить значение настройки в коде сайта:

COption::GetOptionString({код модуля}, {код настройки})