Le chargement de votre site WordPress prend trop de temps et vous ne savez pas pourquoi ? Ce n'est pas seulement frustrant, mais cela peut également, dans le pire des cas, augmenter le taux de rebond de vos visiteurs. Dans cet article, nous vous présentons les causes possibles du problème et vous donnons quelques conseils pour améliorer la performance.
1. Mesure du temps de chargement
Tout d'abord, nous vous recommandons de mesurer le temps de chargement effectif de votre site web. En fonction du résultat, vous pourrez voir plus tard si les ajustements apportés ont le bénéfice attendu.
Pour mesurer le temps de chargement, vous pouvez utiliser l'outil de Pingdom.
Voici comment procéder :
- Accédez au site de Pingdom.
- Entrez votre domaine dans la barre d'URL.
- Sélectionnez votre région.
- Démarrez le test.
→ Si des éléments lents sont détectés, ils seront répertoriés sous « Demandes de fichiers ». - Recherchez des temps de chargement élevés pour des éléments tels que des plugins, des images, des scripts et notez-les.
2. Optimisations
Grâce à l'analyse, vous avez maintenant une vue d'ensemble des éléments qui présentent un long temps de chargement et qui ralentissent votre site web.
2.1 Désactiver les plugins
Les plugins ont un impact significant sur la performance de votre site web. Nous vous recommandons donc de n'utiliser que les plugins dont vous avez réellement besoin. Les plugins inutiles sont par exemple ceux qui vous permettent d'ajouter le code Google Analytics à votre site.
Cela peut être fait rapidement, sans trop d'efforts et sans plugin, en utilisant le guide de Google Analytics.
Pour analyser l'impact des plugins sur votre site, désactivez tous les plugins et réactivez-les un par un. Mesurez la vitesse de votre page après la réactivation de chaque plugin pour identifier celui qui ralentit votre site. En alternative, vous pouvez également utiliser le plugin « Query Monitor » à cette fin.
2.2 Compression GZIP et mod_deflate
GZIP est un programme de compression qui compresse les fichiers de votre serveur web (par exemple, texte, CSS, image) avant de les transmettre au navigateur. Cela permet une transmission plus rapide des fichiers. Vous pouvez tester si votre site est déjà compressé ici.
Avec le module « mod_deflate », vous pouvez activer la compression GZIP et économiser entre 40 % et 70 % du volume de transfert. Vous pouvez même décider quelles règles de compression vous souhaitez appliquer.
Pour activer le module, vous devez insérer du code dans le fichier .htaccess de votre site. Voici un exemple où les fichiers texte (TXT, HTML, CSS, etc.) sont compressés :
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
2.3 Autres optimisations
La base de données utilisée par WordPress se charge en fonctionnement avec certaines données inutiles, comme par exemple :
- Pages supprimées
- Commentaires indésirables
- Révisions
- Plugins supprimés
Pour optimiser la base de données, il est préférable de la nettoyer avec un plugin tel que Autoptimize ou wp optimize. Après l'installation du plugin, vous pourrez optimiser notamment CSS, JavaScript ainsi que le code HTML.
Il est également possible de charger les images grâce au « Lazy Loading ». Cela signifie que les objets de données ne sont chargés que lorsqu'ils sont nécessaires.
3. Mise en cache
Le caching est l'un des aspects les plus importants pour augmenter de manière significative la performance du site. Le caching permet à WordPress de ne pas avoir à reconstruire chaque page dans le navigateur, mais de se référer à une version prête dans le cache établi. Par conséquent, il est important d'utiliser le cache du serveur et du navigateur.
Vous pouvez configurer le cache de votre site WordPress le plus facilement avec des plugins comme W3 Total Cache.
Ces plugins offrent notamment les fonctionnalités suivantes :
- Chargement différé de JavaScript
- Minimisation / Minify de CSS et JavaScript
- Optimisation de la base de données
- Lazy Loading
- Mise en cache du navigateur
- Mise en cache des pages
4. WordPress avec Nginx
Emubox offre la possibilité d'utiliser Nginx avec reverse proxy et Apache.
Un avantage de Nginx avec reverse proxy est que vous pouvez tirer parti de la rapidité de Nginx en combinaison avec Apache. Le serveur web Nginx s'occupe de toutes les demandes statiques vers le site, tandis qu'Apache traite les demandes dynamiques. Cela signifie que le serveur web Apache est moins chargé, ce qui entraîne une augmentation significative de la performance.
Dans nos tests, l'option d'utiliser Nginx avec reverse proxy et Apache a été convaincante. Contrairement à la même installation sur un hébergement web partagé, la performance du site a pu être augmentée de 50 %. Les deux systèmes se complètent donc parfaitement. Par conséquent, il est essentiel de travailler également au niveau de WordPress avec un plugin de cache séparé.
Il est important ici que Nginx ne cache activement que si les en-têtes HTTP ont été correctement réglés. Vous trouverez plus d'informations à ce sujet dans cet article.
5. Cronjobs
Une autre possibilité d'améliorer la performance consiste à remplacer WP-Cron par de véritables cronjobs. WP-Cron est un cronjob de WordPress qui exécute certaines tâches récurrentes (par exemple, rechercher des mises à jour). WP-Cron a le désavantage que les cronjobs sont toujours exécutés lors de l'appel du site. Le serveur doit donc traiter la demande du site et les cronjobs en même temps, ce qui peut entraîner une surcharge de l'hébergement web.
Pour désactiver WP-Cron et le remplacer par un vrai cronjob, procédez comme suit :
- Connectez-vous au Panneau de contrôle Emubox.
- Sous « Sites Web & Domaines », sélectionnez votre domaine.
- Cliquez sur « Tableau de bord » puis sur « Fichiers » pour ouvrir l'explorateur de fichiers.
- Dans le répertoire de votre site WordPress (normalement : httpsdocs), recherchez le fichier de configuration « wp-config.php ».
- Cliquez sur le fichier « wp-config.php pour l'éditer et ajoutez dans le fichier avant la ligne /* That’s all, stop editing! Happy publishing. */ l'instruction define ('DISABLE_WP_CRON', 'true');.
- Cliquez sur « Enregistrer ».
→ WP-Cron a été désactivé. Vous pouvez maintenant configurer votre propre cronjob. - Dans le menu, allez à « Sites Web & Domaines » > « Tableau de bord » > « Tâches programmées ».
- Cliquez sur « Ajouter une tâche ».
- Ajoutez le code suivant comme commande. Remplacez https://ihre-eigene-domain.ch par votre site.
- Définissez un intervalle de temps pour l'exécution. Pour plus d'informations à ce sujet, consultez cet article.
- Cliquez sur « OK ».
→ Le cronjob exécutera le fichier wp-config.php à l'intervalle de temps spécifié.
6. Serveur Cloud
Si vous souhaitez optimiser encore plus la performance de votre site, envisagez de passer d'un hébergement web partagé à un serveur cloud. Avec les serveurs cloud, vous bénéficiez de plus de ressources (CPU/RAM) et d'autres possibilités de mise en cache, comme Redis en combinaison avec des plugins de cache. Toutes les informations sur le serveur cloud se trouvent sur la page produit de notre site web.