以编程方式读取 drupal7 中的节点字段值

发布于 2024-10-18 04:37:22 字数 361 浏览 10 评论 0 原文

我正在寻找从节点 ID 获取字段值的最佳方法。

我的实际代码有效,但我想有一种更简单的方法。

$node = node_load( 1 );
$lang = $node->language;
$field = 'body';
$value = '';

if ( isset($node->{$field}[$lang]) && isset($node->{$field}[$lang][0]) )
{
  $value = $node->{$field}[$lang][0]['value'];
}

echo $value;

drupal 中是否有任何内置函数可以处理这个问题?

I am looking for the best way to get a field value from a node id.

My actually code works however I guess there is an easier way.

$node = node_load( 1 );
$lang = $node->language;
$field = 'body';
$value = '';

if ( isset($node->{$field}[$lang]) && isset($node->{$field}[$lang][0]) )
{
  $value = $node->{$field}[$lang][0]['value'];
}

echo $value;

Is there any build in drupal function that takes care of this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

偷得浮生 2024-10-25 04:37:22

不是全部,但您应该能够使用 http://api.drupal.org/api/drupal/modules--field--field.module/function/field_get_items/7

您仍然需要检查 $items[0] 是否存在并获取其“值”。

Not all of it, but you should be able to simplify it a bit with http://api.drupal.org/api/drupal/modules--field--field.module/function/field_get_items/7.

You still need to check if $items[0] exists and get the 'value' of that.

煞人兵器 2024-10-25 04:37:22

谢谢@Berdir。我同意 field_get_items 是更好的方法。这是一个代码示例:

<?php
  $body = field_get_items('node',$node, 'body');
  print $body[0]['value'];
?>

Thanks @Berdir. I agree field_get_items is a better way. Here is a code example:

<?php
  $body = field_get_items('node',$node, 'body');
  print $body[0]['value'];
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文