2017-08-15 72 views
1

我想按特定節點獲取分類數據。在Drupal 8中按節點獲取分類術語ID

如何通過使用Node對象獲得分類術語ID?

Drupal ver。 8.3.6

+0

可能重複[drupal 8獲取節點中的分類術語值](https://stackoverflow.com/questions/37122908/drupal-8-get-taxonomy-term-value-in-node) –

+0

可能不是,其他答案屬於以前的版本。該解決方案不適合當前的Drupal。 (8.3.6特別) – Arfeen

+0

你試過了什麼?更新代碼。 –

回答

2

你可以做這樣的事情:

$termId = $node->get('field_yourfield')->target_id; 

然後你就可以用

Term::load($termId); 

希望這有助於加載術語。

+0

您也可以從節點加載術語,如node-> get('field_yourfield') - > entity',然後從這裏獲取名稱,例如'node-> get('field_yourfield') - > entity-> name - > value'。 –

2

如果你想獲得分類期限的數據,你可以使用此代碼:

$node->get('field_yourfield')->referencedEntities(); 

希望這將是對你有用。

PS:如果你只需要期限的id,你可以使用這個:

$node->get('field_yourfield')->getValue(); 

你會得到這樣的事情:

[0 => ['target_id' => 23], 1 => ['target_id'] => 25] 

在例如我場有2所引用的分類術語。 謝謝!

相關問題