Добавить gravatar в список авторов

Я использую этот код для перечисления всех авторов на сайте в боковой панели. Он работает, за исключением того, что мне также нужно потянуть изображение Gravatar. Он работает в петле на главной странице с этим

<?php echo get_avatar( get_the_author_email(), '80' ); ?> 

но есть ли способ добавить его в этот список? Также .. Я не могу понять, как исключить учетную запись «Admin» с помощью этого кода, возможно ли это?

Спасибо!

 <?php $order = 'user_nicename'; $user_ids = $wpdb->get_col("SELECT ID FROM $wpdb->users ORDER BY $order"); // query users foreach($user_ids as $user_id) : $user = get_userdata($user_id); ?> <li><?php echo '<a href="' . $user->user_url . '">' . $user->display_name . '</a>'; ?><br /></li> <?php endforeach; ?> 

Solutions Collecting From Web of "Добавить gravatar в список авторов"

Основные настройки

 <?php $args = array( 'orderby' => 'nicename' ); $users = get_users( $args ); foreach ( $users as $user ) { $avatar = get_avatar( $user->ID, '80' ); echo '<li><a href="' . $user->user_url . '">' . $avatar . '<br />' . $user->display_name . '</a></li>'; } ?> 

Исключение пользователя Admin

Либо зайдите в foreach :

 foreach ( $users as $user ) { if( ! in_array( 'administrator', $user->roles ) ) { // echo user list } } 

или если все остальные пользователи являются подписчиками, включите параметр role в качестве аргумента для пользовательского запроса:

 $args = array( 'orderby' => 'nicename', 'role' => 'subscriber' ); 

или, если у вас есть один (или несколько статических) пользователей admin, исключите его из запроса по id:

 $args = array( 'orderby' => 'nicename', 'exclude' => array( 1, 23 ) //adjust ); 

Вот простой пример, показывающий аватары по умолчанию и список всех пользователей с ролью author .

 foreach ( get_users( array( 'role' => 'author' ) ) as $user ) { echo get_avatar( $user->ID, '96', get_stylesheet_directory_uri().'/default-avatar.png', $user->nice_name ); } по foreach ( get_users( array( 'role' => 'author' ) ) as $user ) { echo get_avatar( $user->ID, '96', get_stylesheet_directory_uri().'/default-avatar.png', $user->nice_name ); } 

используйте <?php echo get_avatar( $user->ID, '80' ); ?> <?php echo get_avatar( $user->ID, '80' ); ?> , где-то внутри цикла foreach

Если вы хотите исключить конкретного пользователя, вы можете использовать его id ( $user->ID ) или имя пользователя ( $user->user_login ) или если вы хотите исключить всех администраторов, вы можете использовать if(current_user_can('promote_users')) continue; как первая строка foreach. Ознакомьтесь с ссылкой для получения дополнительной информации.

http://codex.wordpress.org/Function_Reference/current_user_can