Drupal 8: Добавить NID и тип материала в класс <body>
Наверное вы уже заметили что в Drupal 8 пропали классы текущей ноды и типа материала, что значительно усложняет процесс кастомизации дизайна к которому мы привыкли в седьмой версии друпала.
В этой короткой заметке я покажу вам как восстановить справедливость и вернуть эти классы в тег <body> в папке вашей тебы создайте файл: имя_темы.theme и поместите туда следующее содержимое:
<?php
/**
* Implements hook_preprocess_html().
*/
function trans_preprocess_html(&$variables) {
if ($node = \Drupal::request()->attributes->get('node')) {
$variables['attributes']['class'][] = 'page-node-' . $node->id();
$variables['attributes']['class'][] = 'page-' . $node->bundle();
}
}
Как вы наверное уже догадались все значения мы получаем из объекта массива $node там вы можете найти больше значений которые вы так же можете передать в класс <body>