如何在Drupal 7中渲染路径数组键,其中字段类型=节点引用

时间:2011-10-11 11:29:51

标签: php drupal drupal-7

我有一个节点引用字段,我可以使用echo render( $content['field_link'] );

输出

这适用于节点中的一种情况,但我还需要输出该节点的路径。我可以使用echo $node->field_link['und'][0]['node']->uri['path']输出它,但我不想硬编码'und'和'0'数组键。大概有一种方法可以使用render()

如果有人能指出我正确的方向,那就太棒了,谢谢。

1 个答案:

答案 0 :(得分:1)

你不能用render来做,但你不需要硬编码语言代码,你可以从全局变量中获取它:

global $language;
echo $node->field_link[$language->language][0]['node']->uri['path']

尽管如此,您将无法使用0键,所有字段都可能存储为多个字段,因此您始终需要“选择”您想要获取的元素。

如果您的字段的基数为1,则可以始终假设您要查找的元素位于field_link[$language->language][0]。如果不是,您需要遍历und数组中的每个元素并决定显示哪个元素。

修改

你也可以使用LANGUAGE_NONE常量(通常会返回'und',但无论哪种方式都是默认内容的正确语言代码)。