J'essaie d'obtenir l'étiquette de bundle (étiquette de type de nœud) du nœud à partir d'un objet de nœud dans Drupal 8.
Cela fonctionne, mais semble de longue haleine:
$node_type = \Drupal::entityManager()->getStorage('node_type')->load($node->getType())->get('name');
Existe-t-il une autre façon d'obtenir le label du bundle, possible d'une manière moins compliquée?
Le code suivant fonctionne, comme indiqué dans @ Clive .
$type_name = $node->type->entity->label();
Dans le cas où vous avez besoin du nom de machine du type de nœud dans le modèle Twig:
{{ node.getType }}
Si vous voulez l'étiquette en brindille
{{ node.type.entity.label }}
Essayez ce code.
use Drupal\node\Entity\NodeType;
$types = NodeType::loadMultiple();
$bundle = $node->bundle();
$type_name = $types[$bundle]->label();
Il y a une fonction pour ça
node_get_type_label($node);