Редакция VID узла используется для аргумента представлений - PullRequest
0 голосов
/ 14 октября 2011

Я создал поле ссылки на узел, которое позволяет обращаться к нескольким типам мультимедийного контента.Затем я скомбинировал его в виде, чтобы можно было группировать его по типу контента, чтобы изображения были с изображениями, документы с документами и т. Д. Все отлично работает с аргументом NID узла для отображения на обычных страницах, и контент не будет отображаться, еслиполе пустоОднако это должно работать и с пересмотром.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-адреса в аргумент views, чтобы он отображался только на этой конкретной странице, или найти способ сгруппировать цикл foreach в типы контента.Буду очень признателен за любые предложения или помощь.

1 Ответ

0 голосов
/ 14 октября 2011

Следуя цепочке вниз от preview() до set_arguments(), похоже, что вам нужно передать массив в качестве аргументов:

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