Как мне указать в бэкэнд всех пользователей, которым была назначена пользовательская роль?

Из моего предыдущего вопроса Как создавать и извлекать данные из специальной регистрационной формы? Я хотел бы знать, как мне перечислить в бэкэнд всех пользователей, которым была назначена пользовательская роль? Можно ли разместить их на отдельной странице администратора?

Solutions Collecting From Web of "Как мне указать в бэкэнд всех пользователей, которым была назначена пользовательская роль?"

Пользовательские запросы

Существует WP_User_Query , аналогичный WP_Query для сообщений:

 $wp_user_search = new WP_User_Query( array( 'role' => 'editor' ) ); $editors = $wp_user_search->get_results(); 

Обычно это возвращает массив объектов строки из таблицы пользователя:

 echo '<ul>'; foreach ($editors as $editor): echo '<li>'.$edtior->display_name.'</li>'; endforeach; echo '</ul>'; 

Однако вы можете указать его вместо этого, чтобы вернуть массив объектов WP_User, включив в массив, переданный WP_User_Query 'fields'=>'all_with_meta' .

Зарегистрировать страницу администратора

Чтобы зарегистрировать меню администратора, вам нужно подключить функцию к 'admin_menu' которая вызывает add_submenu_page (или add_menu_page если вы хотите страницу верхнего уровня). См. Кодекс .

В этом случае добавление страницы под вкладкой «пользователи» представляется подходящей, а для этого является «users.php».

 add_action('admin_menu', 'register_my_custom_submenu_page'); function register_my_custom_submenu_page() { //Register submenu page underneath users tab. add_submenu_page('users.php','My Editors', 'My Editor','manage_options','my-editors', 'my_editor_page_callback',10); } //This is the callback function specified above //This outputs the content of your page. function my_editor_page_callback(){ ?> <div class="wrap"> <div class="icon32" id="icon-users"><br></div> <h2>My Editors</h2> <?php } ?> 

Если вы хотите иметь таблицу на этой странице, в которой перечислены только пользователи определенной роли, вы можете рассмотреть возможность просмотра плагина WP_List_Table . На самом деле это не плагин, а пример того, как использовать класс WP_List_Table . (Используя это, вы можете включить дополнительные столбцы для метаданных пользователя и т. Д.). (Заметьте, однако, пользовательская таблица по умолчанию уже позволяет вам фильтровать по пользователю).