Использование в PHP
Для прикладного кода используйте фасад SiteSettings. Он подключает сервис,
выбирает сайт по умолчанию и кеширует результат в рамках запроса.
Получить одно значение
use Bitrix\Main\Loader;
use Kokhanenko\Settings\SiteSettings;
Loader::includeModule('kokhanenko.settings');
$phone = SiteSettings::get('contacts', 'phone', 's1', 'Не указан');
Аргументы: тип, ключ, идентификатор сайта и значение по умолчанию. Последние два аргумента необязательны.
Получить весь тип
$contacts = SiteSettings::all('contacts', 's1');
echo $contacts['phone'] ?? '';
Метод возвращает массив ключ => значение только для активных настроек типа.
Короткая запись
Неизвестный статический метод считается кодом типа:
$title = SiteSettings::base('buttonTitle', 's1', 'Подробнее');
$contacts = SiteSettings::contacts(null, 's1');
Первая строка равнозначна get(), вторая — all().
Типы возвращаемых значений
Множественный список возвращается как массив ключей. Остальные виды полей
возвращают строки; отсутствующее значение даёт null или переданное значение
по умолчанию.
Прямой доступ к сервису
Используйте SettingsService, когда нужно получить строки с метаданными,
создать или изменить настройку:
use Kokhanenko\Settings\Service\SettingsService;
$service = new SettingsService();
$result = $service->updateValue($settingId, 'Новое значение');
if (!$result->isSuccess()) {
$errors = $result->getErrorMessages();
}
Изменяющие методы возвращают Bitrix\Main\Result. Всегда проверяйте
isSuccess() и обрабатывайте ошибки.
Расположение исходников
В репозитории модуль находится в нативном каталоге Битрикса:
local/modules/kokhanenko.settings/. Каталоги tests/, documentation/,
graph/ и updates/ являются контурами разработки и не входят в каталог
устанавливаемого модуля.
Пакеты обновлений хранятся отдельно по идентификатору модуля:
updates/kokhanenko.settings/<version>/ и
updates/kokhanenko.settings/<version>.zip.