转:Drupal 如何得到字段的值?

时间:2024-01-10 22:58:02

原文地址: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'];