xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Программно удалить отдельные строки из результатов Views

Опубликовано в

Пример удаления двух строк из представления myview дисплея page:

/**
 * Implements hook_views_post_execute().
 */
function hook_views_post_execute(&$view) {
  if ($view->name == 'myview' && $view->current_display == 'page') {
    unset($view->result[2]);
    unset($view->result[5]);
  }
}

Вместо hook_views_post_execute() можно использовать hook_views_pre_render() если какие-то данные доступны только там.

Написанное актуально для Views 3
Похожие записи

Комментарии RSS

А пейджер как себя будет чувствовать?

Pager будет чувствовать себя печально, потому что меняются данные только текущей страницы.

пейджер ориентируется на $view->total_rows, что творится в $view->result его не беспокоит

Да и в результате пейджер после обработки таким хуком ведет на пустую страницу.

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании