GT Metrix
https://gtmetrix.com
Google PageSpeed Insight
https://developers.google.com/speed/pagespeed/insights/
Pingdom Tools
Google PageSpeed Insights ne mesure pas votre temps de chargement.
Pingdom et GTMetrix le font, mais ils utilisent chacun des mesures différentes, et vous donneront des temps de chargement différents.
Vous devez comprendre ce que vous testez afin de mettre les résultats en contexte.
On s'en $#@&$
Personne ne veut un temps de chargement de 17 secondes, même si le score est de 92 !
Ça c'est mieux !
Tout le monde veut un temps de chargement de 756ms, même si le score est de 69 !
Un seul test n'est pas représentatif de la performance globale.
Exécutez plusieurs tests à la fois pour obtenir une moyenne des performances.
Généralement que la page d'accueil est testée, mais vous devriez également tester d'autres pages critiques sur votre site.
La plupart des sites sont disponibles avec plusieurs variantes de leur URL :
La géographie est importante.
La distance entre la localité du serveur de votre site et celui de l'outil de mesure augmente la latence*
Pour connaître la localité du serveur d'un site :
https://check-host.net/ip-info
*C'est le temps de traitement pour servir une page Web.
Les erreurs 404 provoquent de gros ralentissements.
La raison est simple : tout "WordPress" est chargé lors d'une erreur 404 au lieu d'une erreur serveur.
On peut contourner le problème en forçant la gestion des erreurs 404 au serveur.
Apache (via .htaccess)
https://gist.github.com/GeekPress/97ff5cb1a796c962a2e151f71a248679
NGINX (via la config)
https://gist.github.com/GeekPress/372d5072dddf2763063615a489fa5976
Le poids moyen d'une page dépasse maintenant 2 Mo.
62%, c'est ce que représente le poids des images sur un site web.
Le nombre moyen de requêtes HTTP par page est supérieur à 99.
Pour réduire le nombre de requêtes HTTP des images, on peut appliquer la technique du "LazyLoad".
Il existe plusieurs plugins WordPress :
On peut optimiser le temps de chargement de ces fichiers en utilisant 2 techniques.
Supprime les espace et les commentaires afin de réduire la taille des fichiers CSS & JavaScript.
Condense tous vos fichiers CSS en un seul fichier, réduit le nombre de requêtes HTTP.
Elles sont utilisées par les thèmes et les plugins via le fichier wp-admin/admin-ajax.php
À chaque fois, tout "WordPress" est chargé, ce qui provoque des ralentissements conséquents.
Pour trouver quel plugin utilise admin-ajax.php :
https://fr.docs.wp-rocket.me/article/984-plugin-admin-ajax-php
Guide complet pour analyser l'utilisation des requêtes admin-ajax.php :
La gestion dynamique du panier WooCommerce est gérer avec une requête AJAX.
On l'identifie facilement : exemple.fr?wc-ajax=get_refreshed_fragments
Si votre thème n'utilise pas la gestion dynamique du panier, le plugin Disable Cart Fragments permet de supprimer la requête AJAX.
Ou un "mu-plugin" permet d'optimiser le temps de chargement de la requête :
Avant
Après
@geekpressfr
On recrute