xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Добавить css-класс определённой строке таблицы Views

Опубликовано в

Пример добавления класса my-extra-class четвёртой строке таблицы Views:

/**
 * Preprocess function for views-view-table.tpl.php.
 */
function THEMENAME_preprocess_views_view_table(&$vars) {
  if ($vars['view']->name == 'myview' && $vars['view']->current_display == 'default') {
    $vars['row_classes'][3][] = 'my-extra-class';
  }
}
Написанное актуально для Views 3
Похожие записи

Комментарии RSS

Конечно не всегда это возможно, но предположу что в данном случае можно было бы обойтись css-селектором вида ".row:nth-child(4)"

.row:nth-child(4)

Views по умолчанию добавляет классы views-row-1, views-row-2 и т.д.

А ещё можно добавить скрытое поле во вьюху и в настройках формата подставлять его ввиде токена (row-class опция).

Думаю уважаемый xandeadx знает об этом, что вы написали и просто подобрал неудачный пример. Что если нужно добавить класс к строке таблицы исходя из значения какого-то поля в этой строке. Тогда ни цсс селектором, ни токеном не обойдешься (можно использовать пхп-фиелд - но это горбатого лепить и на нормальном сайте такого не нужно делать).

А как добавить разные классы к каждой строке views?
Например, вывод тегов: первый, второй, третий, четвертый, пятый, шестой и т.д.
первый - выводим красным цветом
второй - синим
третий - зеленым
четвертый - желтым, а дальше, к примеру, всё сначала
пятый - опять красным
шестой - синим и т.д.

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании