Вы здесь

Как добавить свой класс в body в зависимости от нахождения контента в регионе?

0

Добрый вечер, правлю под свои нужды Bootstrap шаблон
У меня есть кастомный регион, в котором как может быть контент так и нет, собственно он либо показывается с контентом либо не показывается
Нужно сделать так, что когда он отображается на странице то в body добавлялся дополнительный класс.
Т.е. аналогично как это из коробки происходит с sidebar-ами, если нет sidebar-ов, то класс no-sidebar добавляется
Увидел я это добавление в файле theme.inc
А как в моём случае быть, т.е. если например есть регион side-menu то добавить класс with-side-menu

Версия Drupal: 
7.x
Категория: 
Theming
Вопрос задан 12.06.2018 - 20:29

Ответы

0

Чтобы добавить в боди класс нужно использовать template_preprocess_html()
Узнать количество блоков в регионе: block_list
Код не проверял, но будет примерно так:


function MYTHEMENAME_preprocess_html(&$vars) { $blocks = block_list('side-menu'); if(sizeof($blocks) > 0){ $vars['classes_array'][] = 'with-side-menu'; } }
Ответ дан 13.06.2018 - 10:06
Аватар пользователя shu
shu
165