Comment supprimer l’image Gravatar de la colonne Nom d’utilisateur de la Tous les utilisateurs page d'administration?
Il semble y avoir un filtre pour la fonction get_avatar
. Donc, je viens de sortir une chaîne vide.
function remove_avatar_from_users_list( $avatar ) {
if (is_admin()) {
global $current_screen;
if ( $current_screen->base == 'users' ) {
$avatar = '';
}
}
return $avatar;
}
add_filter( 'get_avatar', 'remove_avatar_from_users_list' );
UPDATE: Restreindre à la page ' Tous les utilisateurs '.
pre_option_show_avatars
et renvoyer quelque chose qui porte la valeur FALSE
mais n'est pas FALSE
. Disons un 0
.restrict_manage_users
.restrict_manage_users-network
, mais cela ne fonctionne pas, nous utilisons le filtre wpmu_users_columns
et renvoyons tout ce que nous obtenons ici.Résultat:
add_filter( 'wpmu_users_columns', 'no_avatars_in_user_list' );
add_action( 'restrict_manage_users', 'no_avatars_in_user_list' );
function no_avatars_in_user_list( $in = NULL )
{
add_filter( 'pre_option_show_avatars', '__return_zero' );
return $in;
}
Puisqu'il n'y a pas de colonne spéciale d'avatar à désélectionner (les avatars sont à l'intérieur du nom d'utilisateur colonne), vous pouvez essayer de cacher les avatars via css:
function hide_avatars_wpse_94126() {
if(!current_user_can('manage_options')){
// hide only for non-admins
echo "<style>.users td.username img.avatar{display:none !important;}</style>";
}
}
add_action('admin_head-users.php','hide_avatars_wpse_94126');
où ils sont cachés pour les non-administrateurs.
Le résultat sera comme ça:
C'est un vieux fil de discussion, mais au cas où quelqu'un d'autre en aurait besoin: à partir de la version 4.2, vous pouvez utiliser le filtre pre_get_avatar
pour contourner l'extraction de l'avatar et renvoyer une chaîne vide.
add_filter( 'pre_get_avatar', 'rkv_remove_avatar_from_list', 10, 3 );
/**
* Remove the avatar from just the user list.
*
* @param string $avatar HTML for the user's avatar. Default null.
* @param mixed $id_or_email The Gravatar to retrieve. Accepts a user_id, gravatar md5 hash,
* user email, WP_User object, WP_Post object, or WP_Comment object.
* @param array $args Arguments passed to get_avatar_url(), after processing.
*
* @return string An empty string.
*/
function rkv_remove_avatar_from_list( $avatar, $id_or_email, $args ) {
// Do our normal thing on non-admin or our screen function is missing.
if ( ! is_admin() || ! function_exists( 'get_current_screen' ) ) {
return $avatar;
}
// Get my current screen.
$screen = get_current_screen();
// Bail without the object.
if ( empty( $screen ) || ! is_object( $screen ) || empty( $screen->base ) || 'users' !== $screen->base ) {
return $avatar;
}
// Return an empty string.
return '';
}