Je veux charger les termes de taxonomie par tid, mais je n'ai pas trouvé comment. Seulement comment charger la taxonomie par nom, mais maintenant j'ai un identifiant de terme et j'ai besoin d'obtenir la valeur des champs.
J'appelle cela sur la fonction publique build()
pour le bloc personnalisé.
Mon code:
$terms = \Drupal::entityManager()->getStorage('taxonomy_term')->loadTree('menu');
foreach ($terms as $term) {
//var_dump($term->tid);
}
de manière unique
$term = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->load(TID);
$value = $term->FIELD_MACHINENAME->value;
Exemple: charger le titre et la langue du terme id = 2
$term = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->load(2);
$title = $term->name->value;
langcode = $term->langcode->value;
Et pour charger plusieurs comme vous le vouliez
$terms = $entityManager->getStorage('taxonomy_term')->loadMultiple($terms);
foreach ($terms as $term) {
var_dump($term->tid->value); //return tid of term
var_dump($term->name->value); //return title of term
}
Vous pouvez également faire comme ceci:
$tids = [1,2,3];
$terms = \Drupal\taxonomy\Entity\Term::loadMultiple($tids);
Exemple tiré de: http://www.drupal8.ovh/en/tutoriels/17/get-taxonomy-terms-of-a-vocabulary-drupal-8