Фильтр по авторам (выпадающий список авторов) в таблице записей

В этой заметке рассмотрим, как добавить новый фильтр по авторам в таблицу записей в админ-панели.

Задача такая: Есть сайт с несколькими авторами, но нет способа фильтровать сообщения конкретного автора. Код ниже добавляет выпадающий список авторов в блок фильтров таблицы записей в админке 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'],
		] );
	}
}

Получим:

Выпадающий список авторов в таблице записей

В коде используется функция и хук:

Рекомендую ознакомится с их работой, чтобы лучше понимать что делает код.

Читайте также: как добавить свои фильтры в разные таблицы в админке: записи, рубрики, юзеры, комментарии.

1 комментарий
    Войти