Як отримати читабельне для людини ім'я типу вмісту в шаблоні вузла


14

Я створив шаблон вузла для свого вузла, і його нормально працює.

Мені потрібно надрукувати ім’я типу вмісту, яке схоже на "Whitepaper" і має ім'я машини "w1" у моєму шаблоні вузла. Якщо я використовую змінну {{ node.bundle }}, її друк ім'я машини. Але мені потрібно людське читабельне ім’я .

Я спробував багато елементів змінних вузла, вмісту та сторінки, але я не в змозі надрукувати зрозуміле для людини ім'я типу вмісту.

Хтось може допомогти?

Відповіді:


23

Ви маєте змогу отримати зрозуміле для людини ім’я типу вмісту (або "мітки"), використовуючи наступний фрагмент у шаблоні Twig.

{{ node.type.entity.label }} 

2
так, це найпростіше рішення, я не передумав використовувати це поле з посиланням на тип вузла
4k4

2
Я спробував, {{node.label}}, який замість цього повертав ім'я машини, {{node.type.entity.label}} виконав своє призначення, дякую :)
Dev

4

Ви можете додати читане ім'я типу вмісту в гачок попередньої обробки:

mytheme.theme

/**
 * Implements hook_preprocess_node().
 */
function mytheme_preprocess_node(array &$variables) {
  $node = $variables['node'];
  $variables['content_type'] = node_type_load($node->bundle())->label();
}

і використовувати його в шаблоні вузла:

{{ content_type }}

1
Тільки для запису node_type_load застаріле, замість цього слід використовувати NodeType :: load ().
Insasse
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.