[РЕШЕНИЕ ]Программный Вывод ноды, по id, по типу, по юзеру, по дате

Главные вкладки

Аватар пользователя Sadchenko Sadchenko 24 сентября 2014 в 12:28

Привет Всем, решил выложить краткую инструкцию о том, как программно выводить ноды в любом шаблоне блока или страницы или другой ноды! Фильтровать по 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(01)->execute(); //ограничиваем количество выводимых нод
    
if (isset($result['node'])) {
    
$nodes entity_load('node'array_keys($result['node'])); //Ищем
    
$delivery drupal_render(node_view_multiple($nodes)); //Выводим тизером
    
}
?>

В итоге на выдаст одну ноду (тизер), типа материала "page", под айдишником "9", написанная автором с айдишником "2", созданная не позже часа назад.

Комментарии

Аватар пользователя sergeybelya sergeybelya 24 сентября 2014 в 12:41

Вот это вы нагородили:) Есть же просто node_load(). И зачем дополнительные условия, если известен nid - уникальный идентификатор ноды?

Аватар пользователя Sadchenko Sadchenko 24 сентября 2014 в 12:52

"sergeybelya" wrote:
Есть же просто node_load()

ЫЧ!) Ну node_load() ведь для единичного случая с айдишником, на сколько я понимаю, а если список из нод вывести недавних или ноды определенного юзера недавние определенного типа...
я прост нагородил сразу все параметры в одну кучу, а там какой параметр не нужен, то и не прописывать его...
Но в любом случае может и действительно есть более гибкие способы Wink

Аватар пользователя Sadchenko Sadchenko 24 сентября 2014 в 12:56

"sergeybelya" wrote:
Есть же просто node_load()

Вы эт, хоть поделитесь чтоли как Вашим способом выводить по параметрам? Smile
Для меня это щас актуально!