Optimiser le cache de WordPress
L’un des sujets les plus évoqué sur les blogs au sujet de WordPress concerne la vitesse. Parce que le temps de chargement d’un site est aujourd’hui un critère clé pour un bon référencement, et qu’il est toujours plus agréable de travailler sur un site web qui se charge vite, vous pouvez avoir envie d’améliorer les performances de votre blog. Dans cet article, nous vous livrons plusieurs solutions pour accélérer WordPress en optimisant le cache.
Optimiser le cache de WordPress et accélérez votre site
La mise en cache côté client est réalisée dans le navigateurs de vos visiteurs. Cela signifie que lorsque les visiteurs viennent sur votre site, leurs navigateurs stockent des données de certaines parties de vos pages. L’intérêt est qu’ils verront ensuite les pages se charger plus rapidement lors d’une nouvelle visite, car certains éléments seront déjà chargés dans l’historique.
Les différents types de cache
- Le cache des pages : WordPress va interroger la base de données pour générer la page demandée par le visiteur. Il est possible de générer des versions en html de vos pages dynamiques, pour les servir plus vite aux visiteurs.
- Le cache de la base de données : la base de données est le cerveau du site. Activer le cache de la base de données permet là encore de gagner du temps lorsqu’un visiteur émet une requête.
- L’Objet Caching : une API interne à WordPress permet aux plugins de stocker des données relatives à des requêtes demandeuses de mémoire.
- Le cache Opcode : chaque fois qu’une page est demandée, les codes PHP reçoivent des instructions et compilent ensuite les informations. Il est possible de réaliser une mise en cache de ces données compilées.
Par défaut, les navigateurs utilisent le cache, mais nous pouvons faire quelques ajustements à l’aide de fichiers .htaccess.
Code ici
En affinant le fichier .htaccess, il est possible de changer les délais d’expiration de certains éléments, et donc de forcer la mise en cache de certaines parties de votre site habituellement non mises en cache. Placez les lignes de code suivantes dans votre fichier .htaccess et votre cache sera optimisé.
# ------------------------------------------------------------------------------
# | Expires headers |
# ------------------------------------------------------------------------------
# Serve resources with far-future expires headers.
# IMPORTANT: If you don't control versioning with filename-based cache
# busting, consider lowering the cache times to something like one week.
ExpiresActive on
ExpiresDefault "access plus 1 month"
# CSS
ExpiresByType text/css "access plus 1 year"
# Data interchange
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/ld+json "access plus 0 seconds"
ExpiresByType application/vnd.geo+json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds"
# Favicon (cannot be renamed!) and cursor images
ExpiresByType image/x-icon "access plus 1 week"
# HTML components (HTCs)
ExpiresByType text/x-component "access plus 1 month"
# HTML
ExpiresByType text/html "access plus 0 seconds"
# JavaScript
ExpiresByType application/javascript "access plus 1 year"
# Manifest files
ExpiresByType application/manifest+json "access plus 1 year"
ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds"
ExpiresByType text/cache-manifest "access plus 0 seconds"
# Media
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"
# Web feeds
ExpiresByType application/atom+xml "access plus 1 hour"
ExpiresByType application/rss+xml "access plus 1 hour"
# Web fonts
ExpiresByType application/font-woff "access plus 1 month"
ExpiresByType application/font-woff2 "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
ExpiresByType application/x-font-ttf "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
Optimiser le cache passe aussi par des interventions sur la base de données ou le code php. Deux plugins peuvent vous être utiles :
WP Super Cache
C’est le plugin le plus populaire à propos de la mise en cache pour WordPress, avec plus de 6 millions de téléchargements. WP Super Cache fonctionne en générant des fichiers HTML statiques de vos pages et en les rafraîchissant avec un intervalle que vous définissez (une heure par défaut). Un plugin qui fonctionne sans un paramétrage poussé ! Magique.
W3 Total Cache
W3 Total Cache est adapté pour les sites à fort trafic qui utilisent un environnement d’hébergement non-partagé, qui nécessite tout de même des optimisations. Attention aux options très nombreuses à manier avec précaution, car vous pouvez endommager votre site en réglant de mauvais paramètres.