Модуль позволяет создать собственные настройки для сайта, которые позже можно использовать в скриптах сайта.
Основная специфика модуля в том, что имеется возможность указать гораздо больше настроек для параметра, чем это допускают штатные настройки параметров.
Помимо расширенных настроек для параметров, их также можно распределить по разделам для лучшего удобства работы с ними.
Главная задача, которую решили с помощью модуля - максимально ушли от использования констант и/или часто используемых переменных в коде.
Например, добавляем параметр режима работы магазина, прописываем получение параметра в нужном шаблоне сайта, а далее, при необходимости, администратор сможет самостоятельно, через админ раздел менять значение параметра. Без необходимости постоянно править код шаблона.
Основные возможности:
1. Размещение параметров по разделам меню.
2. Задать тип значения параметра.
3. Указать зависимость от языка, модуля, сайта, группы пользователя.
4. Запретить переписывать значение параметра в ходе отработки скриптов.
5. Логирование в Журнал событий действий связанных с параметрами.
6. При возврате значений модуль приводит значение параметра к указанному типу.
7. В случае возникновения ошибок в процессе получения значения, все ошибки будут залогированы в системный файл лога, обычно это __bx_log.log
8. Кеширование данных модуля производится штатными функциями платформы.
9. Время кеширования данных таблицы можно регулировать штатными средствами, с помощью файла /bitrix/.settings.php , через массив cache_flags.
Особенности:
1. Модуль устанавливается в глобальное меню - Расширения.
2. Все настройки можно выполнять только из-под пользователя с правами администратора.
3. Минимальная версия PHP >= 7.4 (согласно требованиям платформы).
Основные программные данные:
// Подключение модуля \Bitrix\Main\Loader::includeModule('native.settings'); // Получение значения параметра с именем parameter-1. // В случае отсутствия значения для параметра или невозможности отработки условий - будет возвращено N. $value = \Native\Settings\Option::get('parameter-1', 'N'); // На время отработки скрипта, если параметр не только для чтения - будет установлено значение Y \Native\Settings\Option::set('parameter-1', 'Y'); // Выборка данных по параметрам \Native\Settings\Option::getList(['select' => ['*'], 'filter' => []]); // Список доступных полей параметра \Native\Settings\OptionTable::getMap(); // Добавление параметра \Native\Settings\Option::add($data); // Обновление параметра \Native\Settings\Option::update($primary, $data); // Удаление параметра \Native\Settings\Option::delete($primary); // Типы значений параметров \Native\Settings\Option::getValueTypes(); // Константы типов значений параметров \Native\Settings\Option::VALUE_TYPE_STRING; \Native\Settings\Option::VALUE_TYPE_NUMBER; \Native\Settings\Option::VALUE_TYPE_ARRAY; \Native\Settings\Option::VALUE_TYPE_JSON; \Native\Settings\Option::VALUE_TYPE_DATE; \Native\Settings\Option::VALUE_TYPE_DATE_TIME; |
Для тестирования работы модуля, вы можете использовать официальную виртуальную лабораторию 1С-Битрикс. Перейти к лаборатории. |
Чего бы вам хотелось видеть в модуле, его функциональности? Опишите ваши пожелания на форме обратной связи. |