Фильтр по авторам (выпадающий список авторов) в таблице записей
В этой заметке рассмотрим, как добавить новый фильтр по авторам в таблицу записей в админ-панели.
Задача такая: Есть сайт с несколькими авторами, но нет способа фильтровать сообщения конкретного автора. Код ниже добавляет выпадающий список авторов в блок фильтров таблицы записей в админке WordPress (рядом с выпадающими списками дат и категорий).
if( is_admin() ){ add_action( 'restrict_manage_posts', 'wp_posts_list__author_dropdown' ); function wp_posts_list__author_dropdown( $post_type ){ if( ! in_array( $post_type, ['page','post'] ) ) return; wp_dropdown_users( [ 'show_option_all' => 'Все авторы', 'selected' => get_query_var( 'author', 0 ), 'name' => 'author', 'who' => 'authors', // 'role__in' => ['author','editor','administrator'], ] ); } }
Получим:
В коде используется функция и хук:
Рекомендую ознакомится с их работой, чтобы лучше понимать что делает код.
Читайте также: как добавить свои фильтры в разные таблицы в админке: записи, рубрики, юзеры, комментарии.