Drupal 8 получает значение таксономии в ветке

Я работаю над Drupal 8,
У меня есть тип контента, называемый Домашняя страница, с полями контента и одним полем типа Entity Reference, который связан с элементом таксономии.
В page.html.twig я хочу получить значение этого элемента таксономии.

Я старался много думать, но ничего не работает.

читать, чем мне нужно сделать этот код:

{{node.field_home_page_slider_type}}

но это даст мне белую страницу. Я попытался с Kint, у меня есть много собственности, но я не нашел, как получить значение моего поля.

Какое решение?

0

Решение

Если вы все еще боретесь с веткой, просто приготовьте то, что вам нужно your_theme.theme, Вы можете получить свой узел в

function HOOK_preprocess_page(&$variables) {
if (!array_key_exists('node', $variables))
return;
$node = $variables['node'];
// ...

}

Здесь вы можете подготовить свои данные и предоставить их для ветки следующим образом:

$variables['foo'] = 'bar';

В Twig вы можете сделать это:

{{ foo }}
0

Другие решения

Единственный способ, который я нашел, — это предварительная обработка узла страницы для получения содержимого поля таксономии.

Вот пример моего кода

$node = \Drupal::routeMatch()->getParameter('node');
$field = 'title';
$index = 0;
if($node){
$nodeArray = $node->toArray();
if (isset($nodeArray[$field][$index]['value'])) {
$value = $nodeArray[$field][$index]['value'];
}
if(isset($nodeArray['field_home_page_slider_type'])){
$id_slider_type = $nodeArray['field_home_page_slider_type'][0]['target_id'];
}
}
0

По вопросам рекламы [email protected]