Приветствую. Сегодня, как вы уже наверняка поняли из названия, мы рассмотрим пример обработки результатов запроса, сделанного с помощью модуля Search API. Запрос я писать не буду, о том, как его сделать, вы можете прочитать в уроке Search API. Пишем свой запрос. Отмечу, что у меня результат запроса хранится в переменной $results
.
Найденные ноды, я буду отображать с помощью вью мода teaser:
if (!empty($results)) {
// Загружаем индекс.
$index = search_api_index_load('node_index');
$items = $index->loadItems(array_keys($results['results']));
$view_mode = 'teaser';
$entities = entity_view($index->getEntityType(), $items, $view_mode);
$search_results = render($entities);
// Инициализируем пейджер.
$items_per_page = 10;
if ($results['result count'] > $items_per_page) {
pager_default_initialize($results['result count'], $items_per_page);
$pager = theme('pager', array('quantity' => 3));
}
}