Как мне добавить свой css-класс только для первой строки views

Главные вкладки

Аватар пользователя Sennheiser Sennheiser 15 июня 2022 в 16:55

У меня есть представление я в нем вывожу в Формате: Неформатированный список, поля. Как мне добавить свой css-класс только для первой строки?:

<div class="views-row views-row-1 МОЙ КЛАСС">
<div class="views-row views-row-2">
<div class="views-row views-row-3">

Лучший ответ

Аватар пользователя Sennheiser Sennheiser 15 июня 2022 в 17:19

Может можно как-то условие задать в файле темизации вьюхи?


<?php if (!empty($title)): ?>
  <h3><?php print $title?></h3>
<?php endif; ?>
<?php 
foreach ($rows as $id => $row): ?>
  <div<?php if ($classes_array[$id]): ?> class="<?php print $classes_array[$id]; ?>"<?php endif; ?>>
    <?php print $row?>
  </div>
<?php endforeach; ?>

Комментарии

Аватар пользователя Sennheiser Sennheiser 15 июня 2022 в 17:19

Может можно как-то условие задать в файле темизации вьюхи?


<?php if (!empty($title)): ?>
  <h3><?php print $title?></h3>
<?php endif; ?>
<?php 
foreach ($rows as $id => $row): ?>
  <div<?php if ($classes_array[$id]): ?> class="<?php print $classes_array[$id]; ?>"<?php endif; ?>>
    <?php print $row?>
  </div>
<?php endforeach; ?>
Аватар пользователя 3_14yavka 3_14yavka 15 июня 2022 в 19:55
1

Например так? Не самый элегантный способ конечно)

<?php if (!empty($title)): ?>
  <h3><?php print $title; ?></h3>
<?php endif; ?>
<?php foreach ($rows as $id => $row): ?>
  <div<?php if ($classes_array[$id]): ?> class="<?php print $classes_array[$id]; if ($id == 0) print ' МОЙ_КЛАСС'; ?>"<?php endif; ?>>
    <?php print $row; ?>
  </div>
<?php endforeach; ?>
Аватар пользователя marassa marassa 15 июня 2022 в 19:58

Sennheiser wrote:
не нужно именно класс

А зачем? Это же явно не самодостаточная задача, а попытка решения какой-то другой задачи. Может ее нужно иначе решать?

Аватар пользователя gera8774 gera8774 16 июня 2022 в 7:47

Может сделать 2 одинаковых по настройкам представления? В первом выводить только первый элемент, а во втором все остальные, пропустив первый.