Le WordPress d'aujourd'hui, décodé pour les développeurs

SEO & GEO

La constante WP_CACHE oubliée avant un audit de performance qui fausse tout

Le rôle exact de la constante WP_CACHE dans wp-config.php, et comment son absence peut fausser un diagnostic de cache sur un hébergement mutualisé.

Par Clément Hadrot • 7 novembre 2025 • 5 min de lecture • Aucun commentaire
La constante WP_CACHE oubliée avant un audit de performance qui fausse tout

Contrairement à ce que son nom laisse penser, la constante WP_CACHE ne met en cache absolument rien par elle-même. Elle n’est ni un mécanisme de stockage, ni une couche de performance : c’est un simple indicateur, lu très tôt dans le cycle de chargement de WordPress, qui informe le cœur qu’un fichier de cache avancé (advanced-cache.php) doit être chargé depuis le dossier wp-content.

Cette distinction, presque sémantique, a des conséquences très concrètes lors d’un audit de performance mené sur un hébergement mutualisé : si la constante est absente ou mise à false, une extension de cache pourtant installée et configurée peut rester totalement inactive, sans qu’aucun message d’erreur ne le signale à l’administrateur.

Définition et fonctionnement interne

Dans le fichier wp-config.php, la ligne concernée ressemble généralement à ceci :

define( 'WP_CACHE', true );

Cette constante est lue par le fichier wp-settings.php, très tôt dans l’initialisation du cœur, avant même le chargement des extensions. Si elle vaut true, WordPress inclut le fichier wp-content/advanced-cache.php, généralement déposé par l’extension de cache elle-même lors de son activation. Ce fichier contient la logique de mise en cache réelle : lecture d’un fichier HTML déjà généré, court-circuitage du chargement complet de WordPress pour les visiteurs anonymes, gestion des règles d’exclusion.

Sans cette constante à true, ce fichier n’est jamais inclus, quelle que soit la configuration renseignée dans l’interface d’administration de l’extension. L’extension peut afficher un statut « actif » dans son propre tableau de bord tout en étant, en pratique, totalement sans effet sur le temps de réponse réel du serveur.

Comparaison avec les autres mécanismes de cache

L'essentiel à retenir : WP_CACHE ne crée aucun cache, elle autorise seulement son activation ; Sans elle, certaines extensions restent inertes sans le signaler clairement ; Un audit de performance doit toujours commencer par vérifier cette ligne
MécanismeRôleDépend de WP_CACHE
WP_CACHEIndicateur d’activation du cache de page avancé—
Cache objet (object cache)Mise en cache des requêtes répétées à la base de donnéesNon, mécanisme indépendant
Cache navigateur (en-têtes HTTP)Mise en cache côté client via Cache-ControlNon, géré au niveau des en-têtes serveur
OPcache PHPMise en cache du bytecode PHP compiléNon, configuré au niveau du serveur PHP

Cette distinction explique pourquoi un audit qui se contente d’observer un temps de réponse serveur correct peut passer à côté du vrai problème : un OPcache correctement configuré au niveau du serveur peut masquer partiellement l’absence de cache de page, en accélérant l’exécution du code PHP sans jamais servir directement une page déjà générée.

Cas d’usage typique en hébergement mutualisé

Sur un hébergement mutualisé, il n’est pas rare que le fichier wp-config.php soit régénéré ou remplacé lors d’une opération de maintenance côté hébergeur, par exemple lors d’un changement de version PHP géré automatiquement. Si cette régénération repart d’un modèle de base ne comportant pas la ligne WP_CACHE, l’extension de cache installée peut se retrouver silencieusement désactivée du jour au lendemain, sans qu’aucune alerte ne soit remontée à l’équipe technique.

Un audit de performance mené dans ces conditions, sans vérifier au préalable la présence de cette ligne, risque de conclure à tort que l’extension de cache elle-même est inefficace, alors que le problème se situe une étape plus tôt, dans un fichier de configuration qui n’a rien à voir avec l’extension.

Vérifier la présence de la constante avant tout diagnostic

  1. Ouvrir le fichier wp-config.php et rechercher la ligne define( 'WP_CACHE', true );.
  2. Vérifier, via wp eval "var_dump( defined('WP_CACHE') && WP_CACHE );", que la constante est bien définie et évaluée à vrai au moment de l’exécution.
  3. Confirmer la présence effective du fichier wp-content/advanced-cache.php, qui doit correspondre à l’extension de cache actuellement active.
  4. Seulement après ces trois vérifications, passer au diagnostic de performance proprement dit.

Pièges fréquents autour de cette constante

  • Une extension de cache désinstallée laisse parfois la ligne WP_CACHE active dans wp-config.php sans que le fichier advanced-cache.php correspondant existe encore, ce qui peut provoquer une erreur fatale au chargement.
  • Deux extensions de cache installées simultanément peuvent entrer en conflit sur ce même fichier advanced-cache.php, chacune tentant de l’écraser lors de son activation.
  • Un environnement de développement local qui copie tel quel le wp-config.php de production peut activer un cache avancé qui masque des modifications de contenu pendant les tests.

Avant de conclure qu’une extension de cache est mal configurée, on vérifie toujours en premier lieu si elle est seulement, techniquement, autorisée à s’exécuter.

En résumé

WP_CACHE n’est pas un mécanisme de cache, c’est une porte d’entrée que le cœur de WordPress vérifie avant d’en charger un. Sur un hébergement mutualisé où le fichier de configuration peut être régénéré à l’insu de l’équipe technique, cette seule ligne mérite une vérification systématique en tout début d’audit de performance, avant d’aller chercher des explications plus complexes à un cache qui, en réalité, ne s’exécute jamais.

Partager :

À propos de l'auteur

Clément Hadrot

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi