Удаление лишних CSS классов у полей

По умолчанию каждое поле содержит набор из нескольких дефолтных CSS классов — field field-name-[field_name] field-type-[field_type] field-label-[label_display]. 3 класса тут явно лишних, а четвёртый — field-name-[field_name], неплоха бы выводить в виде [field_name]. Исправляем ситуацию:

/**
 * Preprocess function for field.tpl.php
 */
function THEMENAME_preprocess_field(&$vars) {
  // Remove classes
  $remove_classes = array(
    'field',
    'field-name-' . $vars['field_name_css'],
    'field-type-' . $vars['field_type_css'],
    'field-label-hidden',
    'field-label-above',
  );
  $vars['classes_array'] = array_diff($vars['classes_array'], $remove_classes);
 
  // Add class
  array_unshift($vars['classes_array'], $vars['field_name_css']);
}

Написанное актуально для
Drupal 7
Теги:
template.php, работа с полями, темизация
Добавлено: 30 Июля 2018 08:03:55 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...