Drupal 用于视图参数的节点修改VID

Drupal 用于视图参数的节点修改VID,drupal,views,arguments,revisions,Drupal,Views,Arguments,Revisions,我构建了一个节点引用字段,允许访问多种多媒体内容类型。然后我把它放在一个视图中,这样我就可以根据内容类型进行分组,这样图像和图像、文档和文档等都可以。 所有这些都可以与node NID参数配合使用,以便在常规页面上显示,如果字段为空,则不会显示内容。然而,这也必须与修正案一起进行。Node NID作为参数显示“我的节点引用”字段的当前发布版本,而不是最新版本。Node Revision VID没有可设置为的默认参数,因此,如果将其保留为“显示所有值”,则在任何页面上显示的视图都会显示空值。使用打

我构建了一个节点引用字段,允许访问多种多媒体内容类型。然后我把它放在一个视图中,这样我就可以根据内容类型进行分组,这样图像和图像、文档和文档等都可以。 所有这些都可以与node NID参数配合使用,以便在常规页面上显示,如果字段为空,则不会显示内容。然而,这也必须与修正案一起进行。Node NID作为参数显示“我的节点引用”字段的当前发布版本,而不是最新版本。Node Revision 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中的最新版本传递到“我的视图”参数中,以便它仅显示在该特定页面上,或者找到一种将foreach循环分组为内容类型的方法。如果您有任何建议或帮助,我们将不胜感激。

按照从到的顺序,您似乎需要传递一个数组作为参数:

$args = array($vid);
$output = $view->preview('block_4', $args);

我试过了,也试过了数组($node->vid),但它们似乎都不起作用,我试过在视图内部设置它,但似乎也不能起作用。。。