2011-01-13 28 views

Respuesta

10

debería ser

$node = node_load($nid); 
$node->field_mood[$node->language][0]['value']; 
+0

Gracias. El lenguaje $ node-> era la pieza que faltaba en mi rompecabezas. – dantz

+1

Recuerde que CCK se ha movido al núcleo. Ya no es $ node-> field_language [0] ['value']. El prefijo field_ ya no es necesario. –

+0

¿Cómo voy a renderizar un campo, como es posible en node.tpl.php? 'render ($ content ['FIELD'])' pero en cambio algo a lo largo de las formas de 'render ($ node-> FIELD)'? – joar

8

Hay una nueva "field_get_items()" función en Drupal 7. La variable de nodo $ ya debe estar definido en page.tpl por lo que no se puede requerir la primera línea.

Esto obtendrá el campo en el idioma apropiado. También hay un parámetro opcional para especificar el idioma deseado si es necesario.

$node = node_load($nid); 
$values = field_get_items('node', $node, 'mood'); 
if ($values != FALSE) { 
    $val = $values[0]['value']; 
} 
else { 
    // no result 
} 

referencia: http://api.drupal.org/api/drupal/modules--field--field.module/function/field_get_items/7

+0

Tengo un 'Aviso: Variable indefinida: nodo' en page.tpl.php; D7. – Disco

+0

Ok parece que '$ node' no está disponible en la página "frontal". – Disco

Cuestiones relacionadas