[Решено] Вывести список элементов, пропутить первые 2. Vews.

Аватар пользователя a.mohax a.mohax 21 сентября 2008 в 21:33

Как вывести блок с пятью новыми сообщениями, при этом не выводить самое новое или первые три новых?

Попытаюсь подробней обьяснить
Создаем блок новых записей в блог. Количество сообщений: три. Сортировка: по убыванию.
Теперь создаем записи в блог: блог1, блог2, блог3, блог4, блог5.
Наш блок будет показывать последние три записи в блог: блог5, блог4, блог3.
А нужно что бы наш блок показал: блог4, блог3, блог2. т.е. опускал самую новую запись в блог.

Решение: (скажем спасибо batbug)

Создаем блок, формат ввода PHP. Вставляем в него вот этот код:

<?php
$view = views_get_view('frontnews2'); //в кавычках назваение вьюсы
print views_build_view('block', $view, array(), false, 1, 0, 0); ?>

во второй строке в конце три числа, первое число - это количество элементов, которое будет выведено, а последнее - это offset т.е. количество пропущенных элементов. Например, если становите 3, то первые 3 элемента будут пропущены и не покажутся.

Комментарии

Аватар пользователя batbug batbug 22 сентября 2008 в 7:07

offset поставить надо. во VIews2 он в интерфейсе указывается, в первых вьюсах - как-то по хитрому. у себя я вьюсу вызываю пхп-кодом и там в параметрах передаю offset

Аватар пользователя a.mohax a.mohax 22 сентября 2008 в 7:20

Ух ты. Я думал там аргумент какой нибудь надо задать. А можно по подробней про этот пхп-код?

Аватар пользователя batbug batbug 22 сентября 2008 в 10:44
<?php
$view = views_get_view('frontnews2'); //в кавычках назваение вьюсы
print views_build_view('embed', $view, array(), false, 1, 0, 0); ?>

во второй строке в конце три числа, первое число - это количество элементов, которое будет выведено, а последнее - это offset

Аватар пользователя a.mohax a.mohax 22 сентября 2008 в 12:35

batbug
Ваш код работает, спасибо. Только как поправить вывод? Т.е. он выводит ноды независимо от того, что прописано в моем вьюсе. Можно вас попросить пример, что бы выводилось только заголоваок ноды?

Аватар пользователя a.mohax a.mohax 22 сентября 2008 в 13:05

Оказываеться во втором вьюсе - это стандартная функция. Пойду потыкаю его.

Спасибо за помощь batbug.

Аватар пользователя batbug batbug 22 сентября 2008 в 14:20

пожалуйста

«Только как поправить вывод? Т.е. он выводит ноды независимо от того, что прописано в моем вьюсе. Можно вас попросить пример, что бы выводилось только заголоваок ноды?»
попробуйте embed заменить на page или block, в зависимости от вашей вьюсы

Аватар пользователя a.mohax a.mohax 22 сентября 2008 в 14:44

Yahoo batbug Вы настоящий друг! Спасибо. Видел на друпал.орг что они вместо embed пишут block. Писал вместо embed слово asdasf - ничего не менялось. А block не догадался написать :). Хотел спросить что же значит embed. А вы мои мысли прочитали. Значить пока не прийдеться переходить на второй вьюс. Еще раз благодарю вас Smile