Drupal 6 - добавляет имя вида к классу тела - PullRequest
2 голосов
/ 03 января 2011

В Drupal 6 (при использовании Views) по умолчанию каждый View заключен в DIV. Этот DIV содержит ряд классов, которые описывают имя и тип представления.

Есть ли способ вывести эти классы в теге body?

1 Ответ

2 голосов
/ 21 марта 2011

Я не могу найти способ доступа к существующим классам представлений, примененным к другим элементам, но я делаю то, что делает тема Zen, то есть использует первый аргумент любого URL в качестве класса тела, например yoursite.com/case-studies будет иметь класс тела "page-case-study". Обычно это помогает, так как часто задается в качестве заголовка представления. Его также можно легко адаптировать / адаптировать к конкретным случаям.

Этого можно достичь с помощью 3 строк в функции THEME_preprocess_page (), в template.php вашей темы:

$path = drupal_get_path_alias($_GET['q']);
list($title, ) = explode('/', $path, 2);
$vars['body_classes'] .= " ".drupal_html_class("page-".$title);

Для большей функциональности вы можете просто скачать тему Zen и взглянуть на их template.php.

Очевидно, убедитесь, что ваш page.tpl.php печатает $ body_classes. Также, чтобы использовать это в Drupal 6, вам нужно скопировать функцию drupal_html_class (), которая также включена в template.php Zen.

...