# Функция wp_list_users()
в WordPress 5.9.0
Функция wp_list_users()
позволяет получить список всех пользователей сайта с различными параметрами. Она может быть полезна для отображения списка пользователей на вашем сайте.
### Основные показатели производительности
- Время выполнения: 1 раз — 0.0159421 секунд (очень медленно) | 50000 раз — 208.82 секунд (очень медленно)
### Хуки функции
- wp_list_users_args
### Возвращаемое значение
Функция возвращает строку (или null). Если параметр echo
установлен в false
, возвращается строка; в противном случае возвращается null
.
## Использование
```php
wp_list_users( $args );
Параметры $args
(строка или массив)
Эти параметры могут быть переданы в виде массива или строки. По умолчанию — пустой массив.
-
orderby (строка): Указывает, как сортировать пользователей. Допустимые значения:
- 'nicename'
- 'email'
- 'url'
- 'registered'
- 'user_nicename'
- 'user_email'
- 'user_url'
- 'user_registered'
- 'name'
- 'display_name'
- 'post_count'
- 'ID'
- 'meta_value'
- 'user_login'
По умолчанию: 'name'
-
order (строка): Направление сортировки для
orderby
. Допустимые значения: 'ASC' (по возрастанию), 'DESC' (по убыванию).
По умолчанию: 'ASC' -
number (целое): Максимальное количество пользователей для отображения.
По умолчанию: пусто (все пользователи) -
exclude_admin (логический): Исключить ли аккаунт администратора?
По умолчанию: false -
show_fullname (логический): Показывать ли полное имя пользователя?
По умолчанию: false -
feed (строка): Если указано, показать ссылку на ленту пользователя с этим текстом в качестве атрибута alt.
По умолчанию: '' -
feed_image (строка): Если указано, показать ссылку на ленту пользователя с изображением по этому URL.
По умолчанию: '' -
feed_type (строка): Тип ленты, к которой нужно сделать ссылку, такой как 'rss2'.
По умолчанию: стандартный тип ленты -
echo (логический): Отображать результат или возвращать его.
По умолчанию: true -
style (строка): Если 'list', каждый пользователь будет обернут в элемент
<li>
; в противном случае пользователи будут разделены запятыми. -
html (логический): Список должен отображаться в HTML или в текстовом виде.
По умолчанию: true -
exclude (строка): Массив или список ID пользователей, которых нужно исключить.
По умолчанию: '' -
include (строка): Массив или список ID пользователей, которых нужно включить.
По умолчанию: ''
Примеры использования
Пример 1: Получение списка пользователей в виде HTML списка
$users_list = wp_list_users( [
'number' => 3,
'echo' => false,
'style' => 'list',
] );
echo htmlspecialchars( $users_list );
/*
style => 'list':
Wasija
stas
anastasiiik
*/
/*
style => '' или 'html' => false:
Wasija, stas, anastasiiik
*/
Изменения
- С версии 5.9.0 — введено.
Исходный код функции wp_list_users()
function wp_list_users( $args = array() ) {
$defaults = array(
'orderby' => 'name',
'order' => 'ASC',
'number' => '',
'exclude_admin' => true,
'show_fullname' => false,
'feed' => '',
'feed_image' => '',
'feed_type' => '',
'echo' => true,
'style' => 'list',
'html' => true,
'exclude' => '',
'include' => '',
);
$parsed_args = wp_parse_args( $args, $defaults );
$return = '';
$query_args = wp_array_slice_assoc( $parsed_args, array( 'orderby', 'order', 'number', 'exclude', 'include' ) );
$query_args['fields'] = 'ids';
$query_args = apply_filters( 'wp_list_users_args', $query_args, $parsed_args );
$users = get_users( $query_args );
foreach ( $users as $user_id ) {
$user = get_userdata( $user_id );
if ( $parsed_args['exclude_admin'] && 'admin' === $user->display_name ) {
continue;
}
if ( $parsed_args['show_fullname'] && '' !== $user->first_name && '' !== $user->last_name ) {
$name = sprintf(
'%1$s %2$s',
$user->first_name,
$user->last_name
);
} else {
$name = $user->display_name;
}
if ( ! $parsed_args['html'] ) {
$return .= $name . ', ';
continue;
}
if ( 'list' === $parsed_args['style'] ) {
$return .= '';
}
$row = $name;
if ( ! empty( $parsed_args['feed_image'] ) || ! empty( $parsed_args['feed'] ) ) {
$row .= ' ';
if ( empty( $parsed_args['feed_image'] ) ) {
$row .= '(';
}
$row .= '';
} else {
$row .= $name;
}
$row .= '';
if ( empty( $parsed_args['feed_image'] ) ) {
$row .= ')';
}
}
$return .= $row;
$return .= ( 'list' === $parsed_args['style'] ) ? ' ' : ', ';
}
$return = rtrim( $return, ', ' );
if ( ! $parsed_args['echo'] ) {
return $return;
}
echo $return;
}
Связанные функции
get_users()
: Получить пользователей по определенным критериям.get_userdata()
: Получить информацию о пользователе по его ID.is_user_logged_in()
: Проверить, вошел ли пользователь в систему.wp_create_user()
: Создать нового пользователя.wp_update_user()
: Обновить данные существующего пользователя.wp_delete_user()
: Удалить пользователя.
Эти функции помогут вам более глубоко взаимодействовать с пользователями в WordPress.