Drupal → Добавляем CSS классы в body на основе текущего пути
Если на сайте используется модуль Path, то удобно иметь в body цепочку классов на основе текущего пути. Например если открыта страница news/world/title то в body должно быть:
<body class="... path-news path-news-world path-news-world-title">Код, добавляющий эти классы:
/** * Preprocess function for theme_html() */ function THEMENAME_preprocess_html(&$vars) { $request_path_array = explode('/', request_path()); if ($request_path_array) { if ($request_path_array[0] == $GLOBALS['language']->language) { unset($request_path_array[0]); } $class = 'path'; foreach ($request_path_array as $arg) { $class .= '-' . $arg; $vars['classes_array'][] = $class; } } }
Код учитывает, что сайт может быть многоязычный, и удаляет из адреса префикс языка.
Комментарии
Если не ошибаюсь, тоже самое можно проделывать с помощью модуля css injector . Но в любом случае спасибо за информацию. Модули модулями... но все же надо понимать, что и как происходит, а не просто тыкать мышкой в админке : )
Оставить комментарий