Привет всем. Скажите как можно, а точнее где мне поменять классы стилей у табов (например на странице входа/регистрации, рис_1)?
В коде стандартный класс указан class="tabs primary" (рис_2), а мне нужно заменить его на свой. Где мне это сделать не подскажете?
Комментарии
https://www.drupal.org/node/211659
извините, а можете пояснить?
hook_menu() использовать и поменять класс
а есть пример?
Выше дали ссылку как вам сделать проще. Цепляйте класс к диву в шаблоне, который табы оборачивает.
А правильнее как?
Правильнее как дешевле и быстрее серверу будет.
Шаблоны .tpl.php в теме для того и существуют, чтобы вёрстку контролировать менее затратно.
По секрету скажу, что body на каждой странице имеет классы, показывающие тип страницы и айдишник сущности, представления, термина, панели и т.д. Как это использовать, догадайтесь сами
function theme_menu_local_tasks - разве мне не это нужно?
ок, вот так правильно будет, если я код
<?phpfunction МОЯ_ТЕМА_menu_local_tasks(&$variables) {
$output = '';
if (!empty($variables['primary'])) {
$variables['primary']['#prefix'] = '<h2 class="element-invisible">' . t('Primary tabs') . '</h2>';
$variables['primary']['#prefix'] .= '<ul class="МОЙ_КЛАСС">'; // тут вставляю свой класс
$variables['primary']['#suffix'] = '</ul>';
$output .= drupal_render($variables['primary']);
}
if (!empty($variables['secondary'])) {
$variables['secondary']['#prefix'] = '<h2 class="element-invisible">' . t('Secondary tabs') . '</h2>';
$variables['secondary']['#prefix'] .= '<ul class="tabs secondary">';
$variables['secondary']['#suffix'] = '</ul>';
$output .= drupal_render($variables['secondary']);
}
return $output;
}?>
помещу в файл template.php ?
Можете подсказать, правильно или нет?
Не могу понять что менять то надо. В вопросе написано стили, в топике классы.
Если надо менять стили, то достаточно просто переписать их в файле стилей (style.css или какой там у вас). И тогда можно не заморачиваться с классами. Не очень понятно зачем их менять, но вообще то они задаются в ui.tabs , который лежит у нас в system . Это если касается классов tabs (как написано).
Если касается class = "tabs primary", то в в своем шаблоне найдите файл page.tpl.php а в нем строчку
<?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
это под выводом заголовка и напишите в class все что хотите. И не надо ничего придумывать )))
Да, извините, нужно класс поменять.
«Не очень понятно зачем их менять»
Да можно вообще тему Бартик оставить и не зморачиваться)))
Подредактировал ответ. Бартик ставить не обязательно. Свой шаблон всегда лучше )))
А там ведь класс Дива, а мне нужно прописать именно для списка UL.
<div class="tabs"></>
в css как пример
ваши стили
}
.tabs ul li{
ваши стили
}
.tabs ul li a{
ваши стили
}
Мне трудно вам подсказать не понимая что именно вы хотите сделать. То есть я прочитал что вы хотите добавить свой класс к ul табов. Просто не могу понять зачем, там же есть свой класс, цепляйтесь к нему и пишите что надо, если бы его вообще не было, то понятно.