获取 field大多数用 entity_metadata_wrapper 还是比较方便。
我有一个私人方法,推荐一下:
function get_field_value($field_name, $node) {
$fields = array('nid', 'vid', 'uid', 'status', 'type', 'title', 'comment', 'status', 'sticky', 'language', 'created', 'changed');
if (in_array($field_name, $fields)) {
return $node->{$field_name};
}
else {
$items = field_get_items('node', $node, $field_name, $node->language);
if (!empty($items)) {
$item = reset($items);
return isset($item['safe_value']) ? $item['safe_value'] : $item['value'];
}
else {
return NULL;
}
}
}