Удаление классов в блоке предварительной обработки крюка
В Drupal 8 я изо всех сил пытаюсь удалить классы из данного блока. Вот краткий фрагмент из функции предварительной обработки:
function mytheme_preprocess_block(&$vars) {
$block_classes = array(
'block_id' => array('custom-class'),
);
$id = $vars['elements']['#id'];
if (isset($block_classes[$id])) {
$vars['attributes']['class'] = $block_classes[$id];
}
return $vars;
}
Интересно, что это работает и добавляет custom-class
в блок, но, несмотря на то, что он переопределяет существующий массив классов, все классы Drupal по умолчанию все еще добавляются (возможно, позже?). Я знаю, что могу удалить классы в twig с помощью {{ attributes.removeClass('class-to-remove') }}
, но в идеале я хотел бы иметь функцию предварительной обработки, которая не требует дополнительного раскрытия файлы шаблонов.
2
Author: jpschroeder, 2016-07-14
1 answers
Ты не можешь этого сделать. Вы можете увидеть узел и шаблон файла . Если только в вашей теме вы не установили
base theme: stable
Или когда вы не определяете базовую тему.
2
Author: MrD, 2016-07-14 05:05:30