11

我正在使用下面的代码将节点字段打印到特定区域,效果很好。但是有一个例子,我只想打印没有标签的字段值。似乎应该很容易,但我遇到了一些麻烦。我很感激任何帮助,因为我对 drupal 还很陌生。谢谢

<?php 
  print drupal_render(field_view_field('node', $node, 'field_description')); ?>
4

1 回答 1

29

field_view_value()接受一个$display可用于隐藏标签的参数:

$display = array('label' => 'hidden');
$view = field_view_field('node', $node, 'field_description', $display);
print drupal_render($view);

如果您只想提取字段的原始值,则可以使用field_get_items()

$items = field_get_items('node', $node, 'field_description');
$first_item = array_shift($items);
$description = $first_item['value'];

列名 ( $first_item['whatever']) 将取决于您使用的字段类型。对于文本字段,它将是value. 请记住在check_plain()输出之前对输入进行清理,因为 Drupal 的惯例是存储原始输入数据并在输出时对其进行清理。

于 2012-07-27T21:09:25.893 回答