$WS_Theme
Внимание!
Этот API удалён начиная с WS 0.95. Используйте CurrentTheme.
Глобальная переменная
$WS_Theme удалена и недоступна в актуальной версии CMS.Для работы с активной темой используйте статические методы класса CurrentTheme.
Переход на CurrentTheme
| Устаревший вызов | Актуальный вызов |
|---|---|
$WS_Theme->root() |
CurrentTheme::url() |
$WS_Theme->path() |
CurrentTheme::path() |
$WS_Theme->header() |
CurrentTheme::header() |
$WS_Theme->footer() |
CurrentTheme::footer() |
$WS_Theme->getData($key) |
CurrentTheme::data($key) |
$WS_Theme->getCSS() |
echo CurrentTheme::getCSS() |
$WS_Theme->getJS() |
echo CurrentTheme::getJS() |
Подключение шаблона
Старый вариант:
php
include $WS_Theme->header();
include $WS_Theme->footer();Актуальный вариант:
php
include CurrentTheme::header();
include CurrentTheme::footer();Ресурсы темы
Старый вариант формировал URL вручную:
php
$logo = $WS_Theme->root() . 'assets/images/logo.svg';Используйте assetUrl(), который проверяет существование файла и добавляет версию темы:
php
$logo = CurrentTheme::assetUrl(
'images',
'logo.svg'
);Настройки темы
Старый вариант:
php
$logo = $WS_Theme->getData('logo');Актуальный вариант:
php
$logo = CurrentTheme::data('logo');Для отсутствующего ключа можно указать значение по умолчанию:
php
$phone = CurrentTheme::data(
'phone',
'Телефон не указан'
);CSS и JavaScript
Методы CurrentTheme::getCSS() и CurrentTheme::getJS() возвращают HTML строкой и не выводят её самостоятельно.
php
echo CurrentTheme::getCSS();
echo CurrentTheme::getJS();SEO-метаданные
Работа с SEO больше не относится к активной теме.
Используйте данные текущей страницы:
php
echo PageData::getSeoHead();
echo PageData::getFaviconHead();Методы без прямой замены
Методы $WS_Theme->getPanel() и $WS_Theme->setMeta() не входят в API CurrentTheme.
CurrentTheme предоставляет доступ к файлам и настройкам активной темы, но не изменяет их и не управляет административной панелью.
Важные замечания
- не проверяйте наличие
$WS_Theme: переменная больше не создаётся - не создавайте объект
CurrentTheme - используйте только статические методы
CurrentTheme - для URL ресурсов используйте
assetUrl() - для файловых путей используйте
filePath()иdirectoryPath() - для настроек темы используйте
data()