Поддерживает
- получение глобальной настройки по имени
- указание значения по умолчанию
- безопасную работу с отсутствующими настройками
Класс статический и автоматически доступен после запуска CMS. Создавать его экземпляр не нужно.
Быстрый старт
php
$siteName = SiteOptions::get('sitename');
$description = SiteOptions::get('description');Для отсутствующей настройки можно указать значение по умолчанию:
php
$siteName = SiteOptions::get(
'sitename',
'Мой сайт'
);Получение настройки
get(string $name, string $default = ''): string
Возвращает значение глобальной настройки.
| Параметр | Описание |
|---|---|
$name |
Имя настройки. |
$default |
Значение, возвращаемое при отсутствии настройки. |
php
$debug = SiteOptions::get('debug');
if ($debug === 'on') {
echo 'Режим разработки включён';
}Если настройка существует, но содержит пустую строку, метод возвращает пустую строку, а не значение по умолчанию.
Допустимые имена
Имя настройки может содержать:
- латинские буквы
- цифры
- дефис
- нижнее подчёркивание
Первым символом должна быть буква или цифра.
При недопустимом имени метод выбрасывает InvalidArgumentException:
php
try {
$value = SiteOptions::get('invalid option');
} catch (InvalidArgumentException $exception) {
echo $exception->getMessage();
}Важные замечания
- метод всегда возвращает строку
- класс предназначен только для чтения настроек
- изменение полученного значения не сохраняет настройку
- не создавайте экземпляр
SiteOptions - вызывайте класс только после запуска CMS
- для текущего URL используйте
CurrentUrl - для текущего языка используйте
CurrentLanguage - для активной темы используйте
CurrentTheme