转:Drupal 如何得到字段的值?
原文地址:Drupal 如何得到字段的值?
直接的方法如下:
$node = node_load($nid); $field_val = $node->field_name['und'][0]['value'];
用这个方法来获取字段的值有几个问题:
- 多语言无法处理
- 文本字段是[0][‘value’],但其他类型的字段并不适用,例如引用字段就是 [0][‘target_id’]
下面适用api方法获取字段值:
$node = node_load($nid); $fields = field_get_items('node', $node, 'field_name'); $field_wrap = field_view_value('node', $node, 'field_name', $fields[0]); $fval = $field_wrap['#markup'];