Часто при создании портала, социальной сети либо других сервисов на WordPress, нужно вывести список пользователей. К сожалению, прибегать к установке плагинов для таких мелочей невыгодно, так как каждый плагин повышает нагрузку на ваш сервер. В этом уроке, я расскажу вам, как в любом месте шаблона вывести список зарегистрированных пользователей без плагинов , либо с использованием шорткода.
Первым делом, нам нужно создать функцию, которая будет заниматься обработкой и выводом списка пользователей. Функция будет работать на основе класса $wpdb->get_results о котором я рассказывал в прошлых уроках по созданию формы обратной связи для WordPress. И так приступим, в файле functions.php вставьте код:
function wpb_recently_registered_users() { global $wpdb; $recentusers = '<ul class="recently-user">'; $usernames = $wpdb->get_results("SELECT user_nicename, user_url, user_email FROM $wpdb->users ORDER BY ID DESC LIMIT 10"); foreach ($usernames as $username) { if (!$username->user_url) : $recentusers .= '<li>' .get_avatar($username->user_email, 45) .$username->user_nicename."</a></li>"; else : $recentusers .= '<li>' .get_avatar($username->user_email, 45).'<a href="'.$username->user_url.'">'.$username->user_nicename."</a></li>"; endif; } $recentusers .= '</ul>'; return $recentusers; }
С помощью данного кода, мы выводим 10 пользователей с упорядочиванием по возрастанию id. На выходе мы получаем аватар и никнейм пользователя со ссылкой на профиль. Если вы хотите вывести другое количество пользователей, для этого в строке $wpdb->get_results измените значение LIMIT 10 на нужное. В случае если вы хотите вывести весь список пользователей, уберите значение LIMIT 10.
На данном этапе вы можете вывести результат в любом месте вашего шаблона использовав функцию:
<span style="color: #000000;"><?php echo wpb_recently_registered_users(); ?></span>
А также, вы можете создать шорткод, для того чтобы выводить список в записях или страницах, для этого после кода который вы вставляли в functions.php вставляем код:
add_shortcode('wpb_newusers', 'wpb_recently_registered_users');
После чего, можно использовать шорткод [wpb_newusers] в любом месте страницы либо записи.
Если урок был вам полезен, либо просто понравился, буду очень благодарен за лайки и репосты в социальные сети, каждый ваш репост, мотивирует меня все больше и больше делиться с вами полезной информацией.
Скажите пожалуйста, а работает ли этот способ вывода пользователей вместе с пагинацией? Как можно сделать так, чтобы на страничке показывалось, например, по 10 пользователей?
К сожалению в две строчки не возможно описать как это сделать, нужно писать целый урок, чтобы объяснить как это сделать. Попробуйте поискать плагин на эту тему.
пойду пробовать. Потом отпишусь, получилось или нет))
Получилось. Если бы они ещё в два столбика выводились. А то в один столбик получается. Не красиво. А лучше в три столбика.
Добавьте внутри когда для элементов li какой то класс, и этому классу добавьте