Comment optimiser la vitesse de chargement de WordPress ?

1

Pour avoir un site qui s'affiche rapidement, et donc vendre de manière optimale, il faut réunir 3 conditions :

  • serveur dont les composants sont à la pointe de la technologie : NVMe SSD 3D
  • combinaison particulière de logiciels serveurs (notre savoir-faire)
  • site web optimisé un minimum qui utilise PHP7, Wordpress est très rapide sur nos serveurs sous forme native, veillez à ce que les thèmes et modules personnalisés ne dégradent pas la performance...

Utilisez le navigateur Chrome qui est vraiment plus rapide que Firefox

Nous confirmons que nos serveurs sont très bien optimisés pour Wordpress, et un site comparaison d'hébergeur web fait le test quotidien de nos serveurs, nous sortons dans le top 3, voyez le lien ici

Pour Wordpress, idem que Prestashop, les meilleures performances sont obtenues avec la branche 7 de PHP
- Opcache est activé par défaut au niveau serveur avec les versions PHP compatibles
- Vérifiez bien la compatibilité de votre thème et vos modules/plugins...

hébergement wordpress

Lisez notre article sur l'impact de la vitesse d'un site web sur sa performance générale

Comment simuler correctement la réalité de l'expérience d'un visiteur sur votre site ?
Nous recommandons par ordre de pertinence ces sites de test en ligne :
https://tools.pingdom.com

A lire pour plus d'outils

NB :
- Les plus importants critères sont le 'First byte time', le speed index et surtout le 'Start Render', donnés sur le site webpagetest.org
- Pagespeed insights est le plus mauvais outil de score en ligne, car incomplet et erroné
- Les sites de tests ne voient pas notre compression Gzip


Savez-vous que tester en ligne un site web basé seulement sur la page d'accueil est loin d'être une évaluation complète ? voici pourquoi...

Un visiteur n'est  en général pas découragé parce que votre site charge entre 3-5 secondes au premier chargement, (si c'est 10 secondes c'est trop effectivement), votre visiteur va bénéficier d'une vitesse plus rapide pour les pages suivantes visitées depuis nos serveurs, grâce aux réglages activés par défaut pour mettre en cache au niveau du navigateur du visiteur, c'est à dire que seulement les nouveaux éléments des nouvelles pages visitées au cours de la visite seront envoyés depuis le serveur, le reste vient de son cache navigateur (imbattable en terme de vitesse)...
Le test seul de la page d'accueil permet de comparer la vitesse entre 2 la vitesse entre 2 services d'hébergement web, et aussi de constater le degré d'optimisation de la page d'accueil ou celle testée... (Nous avons vu de nombreux sites avec aucun problème en page d'accueil, alors que de gros problèmes apparaissaient en pages catégories et produits, liés à des modules non optimisé ou mal conçus...)

Ainsi, si vous utilisez un site de test en ligne, vous devez faire 3 tests pour constater soit la vitesse de 2 serveurs ou l'optimisation dune page de votre site web : page d'accueil, 1 page catégorie, 1 page produit.
Notez que :
- les sites de tests en ligne nettoient leur cache à chaque demande en général, cela ne représentera donc toujours pas la réalité exacte de l'expérience d'un utilisateur
- plus de 50% des visiteurs arrivent sur votre site sur une page qui n'est pas votre page d'accueil...

Pour simuler la réalité de l'expérience d'un utilisateur, vous devrez le faire depuis votre PC en installant le plugin Chrome nommé Apptelemetry (vous allez avoir un compteur affiché à droite de la barre de votre URL) : https://chrome.google.com/webstore/search/apptelemetry
Nettoyez votre cache, et visitez votre site en allant sur chaque type de page, et constatez les temps de chargement à partir de la seconde page visitée...

Utilisez "Inspect elements" avec le bouton droit de votre souris dans chrome ou "Examinez l'élément" dans firefox, voyez l'onglet "Performances", activez l'enregistrement. Maintenant naviguez sur votre site web pour obtenir le waterfall, et éventuellement identifier des éléments qui poseraient problème...

Pour un test avancé et simulé avec des visiteurs en réel, nous recommandons cet unique service :
https://www.userlynx.com/

1. Wordpress est nativement assez rapide pourvu que vous ayez un thème de qualité, et surtout des modules/plugins de qualité : ils seront la source de problème à 95%, le moins possible c'est toujours mieux.
Le poids d'une page, exceptée la page d'accueil, ne doit pas dépasser 3MB...

Très important :
Faîtes des tests de nouveau à chaque étape d'optimisation/action (ajout/suppression/activation de plugins) afin d'identifier facilement quelle action a causé une amélioration ou dégradation de la performance. Sans cette patience, et l'observation nécessaire, il sera beaucoup plus difficile de rechercher l'aiguille dans la botte de foin si vous n'avez pas une expertise d'un certain niveau.

Un exemple d'un test sur  webpagetest.org sur un site assez bien optimisé :

Site web optimisé Wordpress

Voici le score de notre site web dont l'optimisation est maximisée en fonction de nos contraintes techniques et choix de contenus :
https://www.yoorshop.hosting/images/webpagetest-yoorshop.JPG

Le 'First byte time' comprend le chargement initial et quasi simultané de nombreux éléments (sans cache précédent côté visiteur final) :
- résolution DNS initiale
- la mise en place de la connexion initiale SSL quand le site est en SSL
- chargement initial du site qui comprend le CMS WordPress

Tous les caches serveurs, et du site web feront que les prochaines pages visitées seront vues beaucoup plus rapidement...

Le 'Start render' et le 'Speed index' sont très importants (à partir de quand sont affichés des éléments).
Ref : https://blog.dareboost.com/fr/2015/07/start-render-visually-complete-speedindex/

Il est absolument normal de voir un score N/A ou D pour la compression images, cela dépend de vos images, et leur optimisation doit être faite par vous en amont, et non le serveur qui ne peut les compresser de manière significative...

Pour le 'waterfall', n'oubliez pas que vous pouvez faire ce test plus précisément depuis votre propre ordinateur en utilisant la fonction 'Inspecter l'élément' de votre navigateur, voir l'onglet 'réseau'

2. Cache et compression
2a. Installez/activez un seul module de cache à la fois, voici des suggestions par ordre de résultat constaté :
https://fr.wordpress.org/plugins/comet-cache/
https://wordpress.org/plugins/wp-super-cache
https://wordpress.org/plugins/zencache
A lire aussi : ici. N'oubliez pas que chaque nouveau visiteur n'arrive pas forcément sur la page d'accueil, et en second, que les pages suivantes qu'il visitera seront vus bien plus rapidement que la première car il y a le cache serveur, le cache du navigateur client et le cache du CMS... A tester : https://ampforwp.com/tutorials/article/amp-cache/

Nous offrons des possibilités de maximisation de la vitesse avec PHP-FPM + Nginx pour le cache WordPress :
https://support.yoorshop.hosting/knowledgebase/4056/Hebergement-web-Rocket-Nginx-WProcket-plugin-avec-Nginx.html

Egalement, Vous pouvez utiliser un plugin de cache super rapide WPFastestCache

2b. Désinstaller les plugins qui sont désactivés, en effet un plugin non désinstallé est toujours présent dans votre base de données, cause donc un potentiel conflit avec un autre plugin, et alourdit le chargement de votre page !

3. Avoir un bon hébergeur comme YOORshop, nos serveurs sont puissants et performants (SSD + serveurs Nginx et litespeed + http2) et sont paramétrés avec des optimiseurs diverses qui contribuent naturellement à une bonne performance. Le processeur alloué à votre compte joue aussi un rôle important (le prix de nos offres est proportionnel au processeur)

4. Vérifiez la bonne exécution des Javascript et des modules divers (catégories, et sliders)
Testez voir des différences en les désactivant...
Etudiez le Waterfall de votre résultat du site d'audit : http://www.webpagetest.org 

5. Pensez aussi à activer Cloudflare depuis votre cPanel et évaluer si il y un gain pour votre site (vous devez avoir au préalable optimiser votre si il ne l'est pas, c'est incontournable avec ou sans cloudflare !), normalement intéressant pour les sites avec beaucoup de contenus, et très utile pour le temps de chargement si votre cible marché se situe sur des continents lointains....
(Les tests doivent durer au moins 3 jours le temps que Cloudflare ait mis en cache suffisamment de requêtes)
Pour un site SSL et meilleure performance aussi, le moins onéreux est : https://www.keycdn.com/?a=31796 
 
6. Soyez en 50-100% SSL, et bénéficiez de la vitesse du protocole HTTP2  :
https://support.yoorshop.hosting/knowledgebase/1551/Comment-installer-un-certificat-SSL.html
 

7. Optimisation avec PageSpeed
https://support.yoorshop.hosting/knowledgebase/3242/Optimisation-avec-PageSpeed.html


8. Réduire la lourdeur du CMS WordPress

Désactiver wp-cron dans wordpress par ajout de ceci dans wp-config.php :
define('DISABLE_WP_CRON', true);

puis ajout du cron dans cpanel (exécution toutes les 3-5-10 minutes recommandée minimum, et remplacer par votre domaine) :

curl -s "http://www.votredomaine.fr/wp-cron.php?doing_wp_cron" >/dev/null 2>&1

NB : 
- Activer memcache dans Wordpress requiert d'ajouter l'extension de gestion de cache WP-FFPC ou similaire....

9. Nous proposons la fonctionnalité 'SSL offload' qui permet de réduire le temps de chargement lors de la première connexion (si votre site affiche une erreur, ceci signifie qu'il est incompatible avec cette fonction). Pour l'activer/tester, depuis votre cPanel, tout en bas, icone Nginx Manager, choisissez votre domaine, puis 'General settings', cliquez sur 'enabled' pour la ligne SSL Offload, puis plus bas à droite, sauvegardez en cliquant sur le bouton dans la section 'Save settings'