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

29.06.2015

Пример добавления класса 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
Похожие записи

Комментарии

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

.row:nth-child(4)

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

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

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

Александр
16.12.2015, 20:14

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

Добавить комментарий