После того как Вы создали Views нужно позаботиться о том, чтобы посетитель сайта смог его увидеть. Для этого можно прямо в настройках Views указать название ссылки в меню или, дав ему имя, сделать на этот адрес гиперссылку в любом удобном месте. Но что делать, если кроме результатов работы Вашего Views, на странице должна быть выведена и другая информация. Тогда можно при создании этой страницы для вывода на экран Views в заданном месте использовать следующий сниппет:

<?php
/* В следующей строке введите имя выводимого Views,
как оно выглядит на /admin/build/views */
$view_name = "ArticlesInVocabulary1";
/* В следующей строке можно указать имя представления (display) */
print views_embed_view($view_name, 'default');
?>

Другой вариант:

<?php
$view = views_get_view('имя_вьювса');
print $view->preview('default');
?>

Можно передать аргументы:

<?php
  print views_embed_view('имя_вьювса', 'page1', $аргумент1, $аргумент2);
?>

или через массив:

<?php
$args = array(аргумент1, аргумент2, ...  );
$view = views_get_view('имя_вьювса');
print $view->preview('default', $args);
?>

 

Рубрики: 

Ярлыки: 

Комментарии

Все варианты

Все варианты работают.

Проблема возникает дальше. Если выводишь несколько view на одну страницу, то те поля которые выведены в предыдущем, в следующем уже не выводятся.

Например,последние 5 статей,и самые просматриваемые 5 статей. Если записи второго пересекается с первым, то во втором они не выводятся.

Или как частный случай - невозможно вывести одно и тоже представление (или первые его N записей) дважды.