我有一个节点引用字段,我可以使用echo render( $content['field_link'] );
这对于节点中的一种情况很好,但我还需要输出该节点的路径。我可以使用echo $node->field_link['und'][0]['node']->uri['path']
输出它,但我不想硬编码'und'和'0'数组键。可能有一种方法可以用render()
来做。
如果有人能给我指个方向就太好了,谢谢。本
您不能使用render
,但您不需要硬编码语言代码,您可以从全局变量中获得它:
global $language;
echo $node->field_link[$language->language][0]['node']->uri['path']
您将无法绕过使用0
键,但是,所有字段都存储有可能是多个,所以您将始终需要"选择"您想要获取的元素。
如果你的字段的基数是1,你总是可以假设你正在寻找的元素是在field_link[$language->language][0]
。如果没有,则需要遍历und
数组中的每个元素,并决定显示哪个元素。
您也可以使用LANGUAGE_NONE
常量(通常会返回'und',但无论哪种方式都将是默认内容的正确语言代码)。