我已经构建了一个节点引用字段,允许访问多个多媒体内容类型。然后我将它放在一个视图中,这样我就可以根据内容类型进行分组,因此图像包含图像,文档包含文档等。 所有都可以使用节点NID参数在常规页面上显示,如果该字段为空,则不会显示内容。但是,这也必须与修订一起使用。节点NID作为参数显示我的节点引用字段的当前发布版本,而不是最新版本。节点版本VID没有默认参数将其设置为,因此如果将其保留为显示所有值,则最后显示的视图将显示在具有空值的任何页面上。使用
打印节点参考字段<?php foreach ((array)$field_FIELD as $item) {
print $item['view'];
}
?>
将打印出所有字段,但不按内容类型分组。在tpl文件中打印视图类似于
<?php
$view = views_get_view('my_view_name');
$args = array($vid);
$output = $view->preview('block_4', $args);
if (!empty($view->result)) {
print $output;
}
?>
但是这个论点不起作用。我需要将URL中的最新修订版传递到我的views参数中,这样它才会显示在该特定页面上,或者找出将foreach循环分组为内容类型的方法。任何建议或帮助将不胜感激。
答案 0 :(得分:0)
从preview()
到set_arguments()
一直向下链接,看起来你需要传递一个数组作为你的参数:
$args = array($vid);
$output = $view->preview('block_4', $args);