Comment supprimer Gravatar sur WordPress !
Votes : environ (100%) 1 vote

Voulez-vous optimiser la vitesse de chargement de votre site WordPress ?

Aimeriez-vous supprimer le système de gestion des avatars Gravatar intégré avec WordPress ?

Comme vous le savez, chaque seconde de chargement de votre site compte, et Google comme tous les autres moteurs de recherche prend cela en considération pour le référencement.

Une des techniques consiste à diminuer de nombre de requêtes et redirections externes sur les pages de votre site, parmi ces requêtes on trouve Gravatar !

Dans ce tutoriel vous allez découvrir comment optimiser le temps de chargement de votre site en désactivant – complètement – le service Gravatar.

En appliquant cet astuce j’ai gagné plusieurs requetes sur les pages de Easytutoriel.com et cela vau vraiment le coup !

Allons-y !

Supprimer Gravatar sur WordPress :

Je l’ai essayé, ça marche !

Tous les astuces cités dans cet article sont actuellement appliqués sur Easytutoriel.com et comme vous pouvez le voir, le chargement et nombre de requêtes a diminué de façon globale.

6 gravatar apres gtmetrix

Désactiver les avatars une fois pour toute !

Si vous voulez désactiver tous les avatars sur WordPress sans utiliser un système d’avatars local, c’est facile.

Ouvrez le « Tableau de bord » > « Réglages » > « Discussion« .

Vous n’avez qu’à décocher « Afficher les avatars » et tous les avatars sur votre site vont disparaître !

2 desactiver avatars definitivement

Si vous ne voulez pas supprimer tous les avatar mais vous voulez utiliser une alternative à Gravatar, continuez la lecture.

Pourquoi désactiver Gravatar ?

Comme vous le savez Gravatar est un produit de la même société (Automattic) ayant créé WordPress.

Chaque site utilisant WordPress est forcé à utiliser Gravatar et il n’y a aucun paramètre permettant de désactiver ce service sur le tableau de bord.

Le problème c’est que quand vos visiteurs anonymes publient leurs commentaires, plus vous avez de commentaires plus le chargement de page devient lent ; à cause des redirections http que crée Gravatar.

Pour les commentateurs anonymes c’est encore pire, au lieu d’utiliser des images hébergés en local, WordPress utilise des images aléatoires provenant des serveurs Gravatar.

En plus de ça Gravatar n’est pas un service gratuit ; en fait WordPress réclame qu’elle a le droit de vendre les informations sur le trafic internet, c’est la création de Automattic qui est une société à but lucratif !

Donc pour éviter le risque de confidentialité, il est recommandé soit de désactiver les avatars ou remplacer Gravatar par des avatar locaux.

Changer les (Gr)avatars par défaut n’est pas une solution !

Certains sites proposent d’utiliser un avatar personnalisé sur son site WordPress, mais le problème comme je viens de l’expliquer c’est que Gravatar utilisera une redirection depuis votre site vers Gravatar puis va re-afficher l’image que vous avez mis sur votre site !

Voici le code que tout le monde partage et qui sert à changer l’avatar par défaut (en apparence seulement) :

add_filter( 'avatar_defaults', 'easytutoriel_custom_gravatar' );
function easytutoriel_custom_gravatar ($avatar_par_defaut) {
$monavatar = esc_url( get_template_directory_uri() ) . '/images/avatar.jpg';
$avatar_par_defaut[$monavatar] = __('Avatar perso','easytutoriel');
return $avatar_par_defaut;
}

Ce code se met dans le fichier functions.php pour ensuite choisir le « nouveau avatar personnalisé » dans le tableau de bord (« Réglages » > « Discussion« )

3 avatar perso wordpress

Même avec le changement d’avatar par défaut à l’aide de la fonction php ci-dessus ; le nom de domaine appelé reste celui de Gravatar !

4 gravatar src image wordpress

Pour conquérir ce problème nous allons utiliser l’extension WP User Avatar.

Utiliser l’extension WP User Avatar.

La meilleure solution pour utiliser ses avatars locaux c’est l’extension gratuite « WP User Avatar » que vous pouvez installer directement via le gestionnaire d’extensions.

Remarque : Si vous utilisez BuddyPress allez en bas de cet article pour retrouver la solution.

Lien : https://fr.wordpress.org/plugins/wp-user-avatar/

7 wp user avatar installation

Dans la page de Réglages > Discussion ; vous pouvez changer l’avatar par défaut facilement, vous n’avez qu’à cliquer sur « Choisir Image » et uploader votre avatar !

8 avatar wp utilisateur avatar

Pour changer l’avatar de votre profile allez sur « Utilisateurs » > « Votre profil« .

Cherchez en bas de page la zone « Avatar » et rechargez votre nouvel avatar !

Cliquez sur « Mettre à jour le profil » pour sauvegarder les changements.

9 avatar profil

Vous avez BuddyPress installé ?

Comme vous le savez, BuddyPress est un réseau social local créé pour WordPress, Easytutoriel.com l’utilise et j’ai trouvé une solution pour désactiver Gravatar.

Il faut savoir que BuddyPress vient avec un système de gestion d’avatars local, ce qui rend l’extension WP User Avatar inutile car vous ne pouvez pas utiliser deux systèmes de gestion d’avatar sur le même site.

Malheureusement BuddyPress ne désactive pas Gravatar par défaut, en fait, il utilise la fonction

Remplacer la fonction get_avatar() :

Comme vous le savez, cher développeur ; WordPress utilise la fonction get_avatar() pour afficher les avatars des utilisateurs et visiteurs (même anonymes) du site !

Cette fonction appelle par défaut Gravatar pour afficher l’avatar de l’utilisateur.

Pour désactiver l’appel à Gravatar par la fonction get_avatar() recopiez ces lignes dans votre fichier functions.php

/**
* Fonction pour désactiver les avatars de Gravatar sur une installation WordPress avec Buddypress.
*/

// Si BuddyPress est installé et actif

if ( function_exists('bp_is_active') ):

// Tailles des avatars par défaut
define ( 'BP_AVATAR_TINY', esc_url( get_template_directory_uri() ) . '/images/avatar-tiny.jpg' ); // 30
define ( 'BP_AVATAR_DEFAULT_THUMB', esc_url( get_template_directory_uri() ) . '/images/avatar-thumb.jpg' ); // 60
define ( 'BP_AVATAR_DEFAULT', esc_url( get_template_directory_uri() ) . '/images/avatar-default.jpg' ); // 150
define ( 'BP_AVATAR_DEFAULT_ORIGINAL', esc_url( get_template_directory_uri() ) . '/images/avatar-original.jpg' ); // 200

// Ajouter le filtre pour modifier la fonction get_avatar()

add_filter( 'get_avatar' , 'my_custom_avatar' , 10 , 3 );

function my_custom_avatar( $avatar, $id_or_email, $size = 50, $default = '', $alt = '', $args = null ) {
// Si l'entrée est le ID d'un utilisateur
if ( is_numeric( $id_or_email ) ) {

$id = (int) $id_or_email;
$user = get_user_by( 'id' , $id );

}
// Si l'entrée est un objet d'un utilisateur
elseif ( is_object( $id_or_email ) ) {

if ( ! empty( $id_or_email->user_id ) ) {
$id = (int) $id_or_email->user_id;
$user = get_user_by( 'id' , $id );
}

}
// Si l'entrée est un E-mail
elseif ( is_string( $id_or_email )) {
$user = get_user_by( 'email', $id_or_email );
}
// Si l'utilisateur n'existe pas (anonyme)
else {
$user = false;
}
// Si l'utilisateur existe, on va chercher l'avatar de Buddypress selon les tailles ($size)
if ( $user && is_object( $user ) ) {
// convert size to BP
//if ((int)$size <= 30 ) { $size_text = 'tiny' }
if ((int)$size <= 60 ) { $size_text = 'thumb'; }
elseif ((int)$size <= 150) { $size_text = 'full'; }
else { $size_text = 'original'; }
$avatar = bp_core_fetch_avatar( array('item_id' => $user->data->ID, 'type' => $size_text, 'width' => $size, 'height' => $size));
}
// Si anonyme on affiche l'avatar par défaut
else {
// Convertir la taille en $url
if ((int)$size <= 30 ) { $url = BP_AVATAR_TINY; }
elseif ((int)$size <= 60 ) { $url = BP_AVATAR_DEFAULT_THUMB; }
elseif ((int)$size <= 150) { $url = BP_AVATAR_DEFAULT; }
else { $url = BP_AVATAR_DEFAULT_ORIGINAL; }
$avatar = '<img width="' . $size . '" height="' . $size . '" src="' . $url . '" class="avatar avatar-test photo" />';
}
// Retourner le code html
return $avatar;
}

endif;

Créez quatre tailles pour l’avatar par défaut :

  • avatar-original.jpg (200x200px)
  • avatar-default.jpg (150x150px)
  • avatar-thumb.jpg (60x60px)
  • avatar-tiny.jpg (30x30px)

Cela parce-que BuddyPress ne permet de créer que deux versions d’avatar par défaut, la fonction en haut va choisir la taille la plus proche de la taille que vous choisissez en appelant get_avatar().

Et voilà !

Vous venez d’optimiser le chargement de votre site WordPress en remplaçant les avatars par défaut (Gravatar) par vos propres avatars !

Si vous avez des questions je suis là pour vous aider ;)

Soufiane – Easytutoriel.com