[gelöst] computed field: Node title auslesen

am 13.02.2013 - 10:03 Uhr in
Hallo,
ich benötige in einem computed-field den node-title - allerdings den einer referenzierten node "anbieter".
Das Auslesen der Felder funktioniert damit:
$nodeid=$entity->field_anbieter['und'][0]['target_id'];
$entity_field[0]['value'] = db_query("SELECT (field_...) FROM {field_data_field_...} WHERE entity_id=$nodeid")->fetchField();
Hat jemand eine Idee, wie das beim Titel funktioniert?
Gruß Roman
- Anmelden oder Registrieren um Kommentare zu schreiben
EntityAPI
am 13.02.2013 - 10:18 Uhr
Wenn Du es Dir ganz einfach machen willst, installiere das Modul [do:entity EntityAPI] und nimm dann folgenden Code:
<?php
try {
$node_wrapped = entity_metadata_wrapper('node', $entity);
$referenced_title = $node_wrapped->field_anbieter->title->value();
$node_wrapped->computed_field_name->set($referenced_title);
}
catch (Exception $e) {
}
?>
Das sollte eigentlich funktionieren.
Ein wenig detaillierter wird das in Entity metadata wrappers auf drupal.org behandelt.
hth,
Stefan
Danke für die prompte
am 13.02.2013 - 14:51 Uhr
Danke für die prompte Antwort!
Ich bekomme da nur folgende Fehlermeldung:
- Fatal error: Call to a member function value() on a non-object ... modules/computed_field/computed_field.module(394) : eval()'d code on line 3
Wann übergebe ich die Werte denn an $entity_field[0]['value']?
Habe mir mal damit
am 13.02.2013 - 15:26 Uhr
Habe mir mal damit beholfen:
<?php
$nid = $entity->field_anbieter['und'][0]['target_id'];
$node = node_load($nid);
$entity_field[0]['value'] = $node->title;
?>