分類用語をtidでロードしたいのですが、方法がわかりませんでした。名前で分類法をロードする方法のみですが、今では用語IDがあり、フィールドの値を取得する必要があります。
これをカスタムブロックのパブリック関数build()
で呼び出します。
私のコード:
$terms = \Drupal::entityManager()->getStorage('taxonomy_term')->loadTree('menu');
foreach ($terms as $term) {
//var_dump($term->tid);
}
シングルマナーで
$term = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->load(TID);
$value = $term->FIELD_MACHINENAME->value;
例:用語ID = 2のタイトルと言語を読み込む
$term = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->load(2);
$title = $term->name->value;
langcode = $term->langcode->value;
そして、あなたが望むように複数ロードするために
$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
}
次のようにすることもできます:
$tids = [1,2,3];
$terms = \Drupal\taxonomy\Entity\Term::loadMultiple($tids);
例: http://www.drupal8.ovh/en/tutoriels/17/get-taxonomy-terms-of-a-vocabulary-drupal-8