В WordPress хук users_list_table_query_args
позволяет изменять параметры запроса, которые используются для получения списка пользователей в административной панели. Это полезно, если вам нужно настроить отображение пользователей, добавив фильтрацию или изменив порядок сортировки.
apply_filters( ‘users_list_table_query_args’, array $args )
Параметры
$args
(array): Массив аргументов, передаваемых вWP_User_Query
для получения пользователей в текущей таблице списка пользователей.
Применение
Чтобы использовать этот хук, добавьте следующий код в файл вашей темы или в плагин:
add_filter( 'users_list_table_query_args', 'wp_custom_users_list_table_query_args' );
/**
* Функция для фильтрации параметров запроса пользователей.
*
* @param array $args Аргументы, передаваемые в WP_User_Query.
* @return array
*/
function wp_custom_users_list_table_query_args( $args ) {
// Ваши модификации...
return $args;
}
Пример 1: Изменение порядка сортировки в таблице пользователей
В этом примере мы изменим порядок сортировки пользователей на основании их даты регистрации. Мы будем сортировать пользователей так, чтобы сначала отображались новички.
add_filter( 'users_list_table_query_args', function ( $args ) {
// Изменяем сортировку по дате регистрации
$args['orderby'] = 'registered'; // Сортировка по дате регистрации
$args['order'] = 'DESC'; // Сначала новые пользователи
return $args;
} );
Пример 2: Фильтрация пользователей по роли
Вы можете также использовать этот хук для фильтрации пользователей по определенной роли. В следующем примере мы ограничим отображение пользователей только теми, кто имеет роль «Подписчик».
add_filter( 'users_list_table_query_args', function ( $args ) {
$args['role'] = 'subscriber'; // Отображаем только подписчиков
return $args;
} );
Пример 3: Удаление пользователей с определенными мета-данными
В этом примере мы удаляем пользователей, которые имеют определенное мета-значение. Например, если пользователь не подтвердил свою регистрацию, мы можем скрыть его из списка.
add_filter( 'users_list_table_query_args', function ( $args ) {
$args['meta_query'] = array(
array(
'key' => 'is_verified',
'value' => '1', // Показываем только подтвержденных пользователей
'compare' => '='
)
);
return $args;
} );
Заключение
Хук users_list_table_query_args
предоставляет мощные возможности для настройки отображения списка пользователей в административной панели WordPress. С его помощью вы можете изменить параметры запроса, чтобы лучше соответствовать вашим требованиям, от сортировки до фильтрации по ролям и метаданным.