Wie greife ich auf die Felder eines Taxonomiebegriffs zu?


7

Insbesondere versuche ich, auf ein Feld namens "Logo" innerhalb einiger Taxonomiebegriffe (Tweet- und Wikipedia-Bearbeitung) zuzugreifen, bei denen es sich um ein Bild handelt. Ich habe einen Newsfeed auf der Startseite meiner Website und für jedes Feedelement, das neben jedem Feedelement im Feed einen Begriff enthält, der auf eines dieser Bilder verweist. Was wäre der beste Weg, um das Logo-Feld aus jedem Taxonomiebegriff freizulegen oder darauf zuzugreifen?

Antworten:


8

Wenn Sie auf den Inhalt der Drupal-Aufrufentitäten (Datenobjekte wie Knoten, Benutzer, Taxonomien usw.) zugreifen möchten, sollten Sie das Entitätsmodul verwenden . Es fügt einige nette Hilfsfunktionen hinzu. Was Nikit schreibt, ist nicht möglich, Sie würden so etwas tun:

$term_id_1 = $node->field_term['und'][0]['tid'];
$term_id_2 = $node->field_term['und'][1]['tid'];

Dann müssten Sie die Begriffe usw. laden. Stattdessen können Sie dies mit dem Entitätsmodul tun.

$images = array();

$node_wrapper = entity_metadata_wrapper('node', $node);
foreach ($node_wrapper->field_term as $term_wrapper) {
  $images[] = $term_wrapper->field_image->value();
}

$images wird nun ein Array mit dem Bildfeldobjekt sein, das Informationen wie uri, fid usw. enthält.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.