方法一
- <?php
- $field = $node->body[LANGUAGE_NONE][0][‘value‘];
- ?>
这个方法的弊端是根据语言项来获取值,如果Drupal是多语言的,这个方法就不适用了。
方法二
- <?php
- $body = field_get_items(‘node’, $node, ‘body’, $node->language);
- print $body[0][‘value‘];
- //获取body 字段 teaser的值
- $teaser = field_view_value(‘node’, $node, ‘body’, $body[0],’teaser’);
- ?>
通过field API获取到字段的值,并且能自动判断当前node所处的语言环境,适用于Drupal 多语言网站。
方法三
- <?php
- $node = node_load($nid);
- $wrapper = entity_metadata_wrapper(‘node’, $node);
- $value = $wrapper->body->value();
- ?>
这个方法是通过entity模块的metadata wrapper封装获取到值,需要确定Drupal 7启用了entity模块。
从上面的汇总,我更建议你使用方法二或者方法三。
时间: 2024-08-06 07:23:36