views_(screen_id) хук-фильтр . WP 3.5.0
Позволяет изменить список доступных вариантов отображения таблицы.

В примере, что на скриншоте, через хук-фильтр проходят следующие данные:
Array ( [all] => <a href="edit.php?post_type=post&all_posts=1">Все <span class="count">(21)</span></a> [mine] => <a href="edit.php?post_type=post&author=3" class="current" aria-current="page">Мои <span class="count">(5)</span></a> [publish] => <a href="edit.php?post_status=publish&post_type=post">Опубликованные <span class="count">(15)</span></a> [sticky] => <a href="edit.php?post_type=post&show_sticky=1">Прилепленные <span class="count">(2)</span></a> [future] => <a href="edit.php?post_status=future&post_type=post">Запланированные <span class="count">(1)</span></a> [draft] => <a href="edit.php?post_status=draft&post_type=post">Черновики <span class="count">(3)</span></a> [pending] => <a href="edit.php?post_status=pending&post_type=post">На утверждении <span class="count">(2)</span></a> [trash] => <a href="edit.php?post_status=trash&post_type=post">Корзина <span class="count">(2)</span></a> )
Имя хука генерируется динамически на основании свойства $this->screen->id (уникальный ID экрана админки), значения screen_id смотрите здесь: get_current_screen().
Использование
add_filter( 'views_(screen_id)', 'filter_function_name_3558' ); function filter_function_name_3558( $views ){ // Изменяем... return $views; }
- $views(массив)
- Список ссылок: вариантов отображения таблицы.
Примеры
#1 Удалим один элемент (sticky) из списка для таблицы постов
add_filter( 'views_edit-post', function( $array ){ unset( $array['sticky'] ); return $array; } );
#2 Удалим весь список действий для таблицы постов
add_filter( 'views_edit-post', '__return_empty_array' );
Где вызывается хук
views_(screen_id)
views_(screen_id)
views_(screen_id)
wp-admin/includes/class-wp-media-list-table.php 284
$views = apply_filters( "views_{$this->screen->id}", array() );
wp-admin/includes/class-wp-list-table.php 405
$views = apply_filters( "views_{$this->screen->id}", $views );
wp-admin/includes/class-wp-plugin-install-list-table.php 317
$views = apply_filters( "views_{$this->screen->id}", $views );