Disponible pour missions & renforts d’agence · Réponse rapide, par la personne qui intervient

Le tableau de bord wp-admin est très lent

Une boutique publique rapide et un tableau de bord qui rame n’ont pas les mêmes causes : c’est un autre ensemble de mécanismes qui se joue derrière wp-admin, entre l’API Heartbeat, les options chargées à chaque requête et l’absence de cache objet, indépendamment de ce qui rend le front-end lent ou rapide.

Décrire mon problème Discuter sur WhatsApp

Comment je procède

  1. Isolation du périmètre

    Je confirme que la lenteur touche bien wp-admin et wc-admin spécifiquement, en comparant avec le temps de chargement du site public au même moment.

  2. Contrôle de l’API Heartbeat

    Je vérifie la fréquence des appels à admin-ajax.php déclenchés par défaut toutes les 15 à 60 secondes sur chaque onglet wp-admin ouvert, et son effet sur un hébergement à nombre de workers PHP-FPM limité.

  3. Audit des options à autoload

    Je mesure le poids des lignes wp_options avec autoload à yes : ces données sont chargées à chaque requête, admin comme front, et s’accumulent au fil des années d’installation d’extensions.

  4. Vérification du cache objet

    Je regarde si un cache objet (Redis ou Memcached) est en place. Sans lui, les écrans WooCommerce comme la liste des commandes ou les rapports relancent des requêtes SQL coûteuses à chaque affichage.

  5. Correction ciblée

    Selon ce qui domine, j’ajuste la fréquence du Heartbeat, je nettoie les options obsolètes, je mets en place un cache objet, ou je réécris une requête spécifique à un écran d’administration trop lourd.

Ce que je traite régulièrement

  • La boutique publique s’affiche vite, mais wp-admin met plusieurs secondes à chaque clic
  • La liste des commandes met un temps anormal à s’afficher, surtout après un filtre
  • L’écran WooCommerce Analytics tourne en boucle avant d’afficher les chiffres
  • Avoir plusieurs onglets wp-admin ouverts ralentit visiblement tout le reste du site
  • La lenteur s’aggrave d’année en année sans qu’aucune extension n’ait changé récemment

Ce qui ralentit spécifiquement l’administration

L’API Heartbeat interroge admin-ajax.php par défaut toutes les 15 à 60 secondes sur chaque onglet wp-admin ouvert, pour l’enregistrement automatique, les notifications ou la vérification de session. Sur un hébergement où le nombre de workers PHP-FPM est limité, quelques onglets ouverts en parallèle suffisent à ralentir visiblement toute l’administration.

Les lignes de wp_options marquées autoload=yes s’accumulent au fil des installations et désinstallations d’extensions au cours des années, et certaines n’en nettoient jamais. Ce jeu d’options est chargé intégralement à chaque requête, admin comme front-end : plus il pèse lourd, plus chaque page ralentit, discrètement mais constamment.

Sans cache objet (Redis ou Memcached), les écrans d’administration WooCommerce, en particulier la liste des commandes et les rapports d’Analytics, relancent des requêtes SQL non triviales à chaque chargement au lieu de réutiliser un résultat déjà calculé. Les écrans de rapports agrègent tout l’historique des commandes : sur un catalogue avec plusieurs années de ventes, ça peut devenir réellement lourd sans index adapté ni couche de cache.

Autres sujets liés

Décrivez votre besoin en 1 minute

Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.

Qu’est-ce qui est lent exactement ?
Le site utilise-t-il un constructeur de pages ?

Elementor, Divi ou WPBakery ajoutent une couche de rendu qui pèse lourd si elle est mal optimisée.

Combien d’extensions actives, environ ?
Quel type d’hébergement utilisez-vous ? (facultatif)
Avez-vous déjà une mesure chiffrée ? (facultatif)
Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Questions fréquentes

Pourquoi mon site public est rapide mais pas wp-admin ?
Parce que ce sont deux ensembles de mécanismes différents. Le front-end dépend surtout du cache de pages et des images ; l’administration dépend de l’API Heartbeat, des options chargées à chaque requête et du cache objet.
C’est quoi exactement l’API Heartbeat ?
Un mécanisme WordPress natif qui interroge le serveur à intervalle régulier depuis chaque onglet wp-admin ouvert, pour l’enregistrement automatique et les notifications. Sa fréquence par défaut peut être réduite ou limitée à certains écrans.
Un cache objet, c’est compliqué à mettre en place ?
Ça dépend de l’hébergement : certains l’activent en un clic, d’autres demandent une installation de Redis ou Memcached au niveau serveur, hors de portée sans accès technique.
Est-ce que je peux corriger ça moi-même ?
Ajuster le Heartbeat ou activer un cache objet proposé par l’hébergeur est accessible à un généraliste. Diagnostiquer une requête lente propre à un écran WooCommerce précis demande une lecture du code.
Pourquoi Analytics est-il l’écran le plus lent de tous ?
Parce qu’il agrège l’intégralité de l’historique des commandes à chaque affichage. Sur un catalogue avec plusieurs années de ventes, sans index ni cache adaptés, c’est l’écran le plus coûteux en requêtes SQL.