【发布时间】:2012-01-04 12:55:55
【问题描述】:
我有一个由 URL 和标题组成的link field,我只需要在我的节点内容类型 tpl 文件中打印出没有标题的链接字段的 URL,这可能吗?
谢谢!
【问题讨论】:
标签: php drupal hyperlink drupal-7 linkfieldvalue
我有一个由 URL 和标题组成的link field,我只需要在我的节点内容类型 tpl 文件中打印出没有标题的链接字段的 URL,这可能吗?
谢谢!
【问题讨论】:
标签: php drupal hyperlink drupal-7 linkfieldvalue
应该很简单:
$url = $node->field_name_of_field[$node->language][0]['url'];
我会分解一下:
字段是节点对象的成员,总是以field_ 为前缀,因此可以使用$node->field_my_field 找到名为my_field 的字段。
节点对象的每个字段成员本身都是该字段的所有不同语言版本的数组,由语言键键控。要访问表示节点的语言的字段值,您将使用:$node->field_my_field[$node->language] 或 $node->field_my_field[LANGUAGE_NONE](这是默认值)。
此外,如果字段的基数大于 1,则每个语言数组中可能有多个字段值。如果您有一个允许多个值的字段(例如图像),您可以像这样遍历每个字段:
foreach ($node->field_my_field[$node->language] as $delta => $item) {
}
在语言数组的每一项中都是实际的字段值。字段可能有多个列(例如链接模块有url、title 和attributes)。要继续前面的示例,您会找到如下所示的 url 和标题:
$url = $node->field_name_of_field[$node->language][0]['url'];
$title = $node->field_name_of_field[$node->language][0]['title'];
希望有帮助!
【讨论】: