VID редакции узла, используемый для аргумента представлений

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


person Jason    schedule 14.10.2011    source источник


Ответы (1)


По всей цепочке вниз от _ 1_ на _ 2_, похоже, вам нужно передать массив в качестве аргументов:

$args = array($vid);
$output = $view->preview('block_4', $args);
person Clive    schedule 14.10.2011
comment
Я пробовал это, а также массив ($ node- ›vid), но ни один из них, похоже, не работает, попытался установить его внутри самих представлений и, похоже, не может заставить это работать ... - person Jason; 14.10.2011