我有一个节点引用字段,我可以使用echo render( $content['field_link'] );
这适用于节点中的一种情况,但我还需要输出该节点的路径。我可以使用echo $node->field_link['und'][0]['node']->uri['path']
输出它,但我不想硬编码'und'和'0'数组键。大概有一种方法可以使用render()
。
如果有人能指出我正确的方向,那就太棒了,谢谢。
本
答案 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',但无论哪种方式都是默认内容的正确语言代码)。