Добавление CSS классов к полю с множественным значением

Пт, 21/04/2017 - 04:13

Доброго дня всем. Столкнулась с проблемой - добавление css класса к div.item-field (поле с терминами).

Вот рабочий код, который добавляет класс к самой ссылке:

<?php
function theme_preprocess_field(&$variables$hook) {
  
$element $variables['element'];
  if (isset(
$element['#field_name'])) {
    if (
$element['#field_name'] == 'field_name') {
      foreach (
$variables['items'] as $index => $item) {
        
$variables['items'][$index]['#options']['attributes']['class'][] = 'new-css-class';
      }
    }
  }

?>

Как добавить класс к диву item-field - пока непонятно. Все пробы привели к белой странице. Кто делал подобное?

0 Спасибо

Комментарии

Аватар пользователя ElenaSerg
1 month 4 дня назад ElenaSerg #

Вот что на выводе, при использовании этого сниппета:

<div class="field-items">
     <div class="field-item even">
          <a href="/tags/tags1" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="" class="new-css-class">тег 1</a>
     </div>
     <div class="field-item odd">
          <a href="/tags/tags2" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="" class="new-css-class">тег 2</a>
     </div>
</div>
0 Спасибо
Аватар пользователя McSeem
1 month 4 дня назад McSeem #

А если это поле выводить с использованием опций вывода:
<?php array('attributes' => array('id' => array('your-id'), 'class' => array('your-class-name'))) ?>
Похожая ситуация была у меня.

0 Спасибо
Аватар пользователя ElenaSerg
1 month 4 дня назад ElenaSerg #

Не совсем понимаю как это реализовать к обертке, а не к значению.

Пробовала создавать шаблон для поля с fireach - не работает.
В шаблоне - тоже не работает.

0 Спасибо
Аватар пользователя McSeem
1 month 4 дня назад McSeem #

Можно полностью вручную выводить это составное поле с опциями вывода с указанием class и id, т.е. генерить свою обертку с нуля, но это трудоемко. Можно выводить через Views, где в настройках поля указываются кастомные имена class и id. Я бы первым делом попытался реализовать через Views.

0 Спасибо
Аватар пользователя ElenaSerg
1 month 2 дня назад ElenaSerg #

Спасибо за наводку. Буду крутить :)

0 Спасибо