Search API. Обработка результатов запроса

Приветствую. Сегодня, как вы уже наверняка поняли из названия, мы рассмотрим пример обработки результатов запроса, сделанного с помощью модуля 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));
  }
}
Benya