Привет Всем, решил выложить краткую инструкцию о том, как программно выводить ноды в любом шаблоне блока или страницы или другой ноды! Фильтровать по ID, Дате создания, автору, типу материала и статусу
<?php
$query = new EntityFieldQuery();
$result = $query->entityCondition('entity_type', 'node')
->propertyCondition('nid', 9) //Например нода с nid = 9
->entityCondition('bundle', 'page') //Тип материала
->propertyCondition('uid', 2) //Автор ноды (например uid = 2)
->propertyCondition('created', REQUEST_TIME - 3600, '>=') // Создана не позже часа назад
->propertyCondition('status', 1) //Опубликован
->range(0, 1)->execute(); //ограничиваем количество выводимых нод
if (isset($result['node'])) {
$nodes = entity_load('node', array_keys($result['node'])); //Ищем
$delivery = drupal_render(node_view_multiple($nodes)); //Выводим тизером
}
?>
В итоге на выдаст одну ноду (тизер), типа материала "page", под айдишником "9", написанная автором с айдишником "2", созданная не позже часа назад.
Комментарии
Вот это вы нагородили:) Есть же просто node_load(). И зачем дополнительные условия, если известен nid - уникальный идентификатор ноды?
ЫЧ!) Ну node_load() ведь для единичного случая с айдишником, на сколько я понимаю, а если список из нод вывести недавних или ноды определенного юзера недавние определенного типа...
я прост нагородил сразу все параметры в одну кучу, а там какой параметр не нужен, то и не прописывать его...
Но в любом случае может и действительно есть более гибкие способы
Вы эт, хоть поделитесь чтоли как Вашим способом выводить по параметрам?
Для меня это щас актуально!