Wie Nids von entity reference field mit EntityFieldQuery ermitteln?
Eingetragen von rhodes (631)
am 15.12.2015 - 19:54 Uhr in
am 15.12.2015 - 19:54 Uhr in
Hallo zusammen,
ich habe einen content type publisher mit einem entity reference field "field_doc_entity", mit dem der content type documents referenziert werden kann.
Beispiel: für den Publisher nid=5 stehen im field_doc_entity die IDs 35,87,123,445.
Ich will jetzt für eine beliebige publisher id alle referenzierten documents ermitteln. So habe ich es versucht
$nid = 5;
$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'publisher');
$query->fieldCondition('field_doc_entity', 'target_id', $nid, '=');
$results = $query->execute();
Leider ist das result leer. Was mache ich falsch?
Danke & Grüße
rhodes
- Anmelden oder Registrieren um Kommentare zu schreiben
EntityFieldQuery
am 16.12.2015 - 08:41 Uhr
Moin.
In der entityCondition fragst Du nach einem entity_type namens "publisher". Hier müsste jedoch "node" stehen. "publisher" ist das bundle des Entitiy Typen.
Dementsprechend müsste Deine Query so aussehen:
<?php
$nid = 5;
$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'publisher')
->fieldCondition('field_doc_entity', 'target_id', $nid, '=');
$results = $query->execute();
?>
Handbuch-Seite zu EntityFieldQuery: https://www.drupal.org/node/1343708
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
vielen Dank,
am 23.12.2015 - 21:46 Uhr
das hilft mir schon mal weiter...