Centre WordPress
Diagnostiquez les incidents WordPress courants et retrouvez les contrôles, commandes et réglages utiles sans modifier directement votre site.
Analyse locale de wp-config.php
Le contenu est analysé uniquement dans votre navigateur. Les valeurs de DB_PASSWORD, clés et salts ne sont jamais affichées dans le rapport.
Diagnostic express
wp core version
wp core verify-checksums
wp plugin list
wp plugin list --status=active
wp plugin update --all --dry-run
wp theme list
wp theme update --all --dry-run
wp db check
wp db size
wp option get siteurl
wp option get home
wp rewrite list
wp rewrite flush --hard
wp cron event list
wp cron test
wp config get WP_DEBUG
wp config get DISABLE_WP_CRON
wp cache flush
wp user list --role=administrator
wp core verify-checksums
wp media regenerate --only-missing --yes
wp search-replace 'http://ancien-domaine' 'https://nouveau-domaine' --dry-run
php -v
df -h
tail -f wp-content/debug.log
Sauvegarder avant
Avant une mise à jour majeure, un search-replace ou une réparation de base.
Logs avant intuition
Une erreur PHP exacte vaut mieux qu’une désactivation aléatoire de plugins.
WP-CLI
Très utile lorsque wp-admin ne répond plus.
Permaliens
Vérifiez aussi la configuration Apache/Nginx, pas seulement WordPress.
Malware
Préservez les preuves et identifiez le vecteur avant de seulement supprimer les fichiers visibles.
--dry-run lorsqu’elles existent, et conservez une sauvegarde récente.
Mission du centre
8 playbooksDiagnostiquer WordPress par couches — HTTP/PHP, plugins/thème, base SQL, cache, cron, mail et permissions — en conservant une sauvegarde et en évitant les changements multiples.
Triage rapide
- Noter URL exacte, code HTTP, message et dernière modification.
- Vérifier front, wp-admin et santé PHP/DB séparément.
- Collecter error_log/debug.log avant désactivation massive.
- Confirmer espace disque et disponibilité base.
- Sauvegarder fichiers/base avant changement structurel.
Arbre de décision
Commencer par logs PHP et dernier plugin/thème/changement.
Tester MySQL, credentials, host et saturation.
Mesurer TTFB, requêtes, cron, cache et ressources.
Séparer génération WordPress et remise SMTP.
Playbooks d’intervention
Commencer en lecture seule, collecter les preuves, puis ne modifier qu’une variable à la fois.
01Erreur critique WordPressModification contrôlée
Écran “Il y a eu une erreur critique” ou wp-admin inaccessible après modification.
Vérifications
- Lire fatal PHP avec fichier/ligne exacts.
- Identifier dernier plugin/thème/update.
- Vérifier version PHP et compatibilité.
Commandes / preuves
wp plugin listwp theme listtail -n 100 wp-content/debug.logRésultat attendu
Le fatal pointe vers un composant ou une incompatibilité précise.
Actions correctives
- Désactiver uniquement le composant fautif puis retester.
- Conserver logs et version avant mise à jour/rollback.
Escalader si
Fatal dans core, corruption ou plugin métier critique sans alternative.
02Erreur HTTP 500Modification contrôlée
Le serveur retourne 500 sur tout le site ou certaines routes.
Vérifications
- Lire error_log PHP/Apache/Nginx au timestamp.
- Vérifier .htaccess/rewrite et mémoire PHP.
- Comparer front et endpoint direct.
Commandes / preuves
wp core verify-checksumsphp -vwp option get siteurlRésultat attendu
Le 500 est relié à un fatal, rewrite, permission ou ressource identifiable.
Actions correctives
- Corriger la couche identifiée sans réécrire tout .htaccess à l’aveugle.
- Retester la route exacte après chaque changement.
Escalader si
500 provient du serveur/hébergeur ou plusieurs vhosts sont touchés.
03Écran blanc / sortie videLecture / sans risque
Page blanche sans message alors que serveur répond.
Vérifications
- Activer journalisation sans afficher erreurs en production.
- Chercher fatal, memory exhausted ou output buffering.
- Tester thème/plugin en environnement contrôlé.
Commandes / preuves
wp config get WP_DEBUGwp plugin list --status=activewp theme listRésultat attendu
Un log explique pourquoi le rendu s’arrête.
Actions correctives
- Corriger composant ou limite responsable.
- Ne pas laisser WP_DEBUG_DISPLAY actif en production.
Escalader si
Aucun log malgré requête PHP ou crash FPM/serveur.
04Erreur de connexion base de donnéesIntrusif / escalade
“Error establishing a database connection” ou requêtes SQL impossibles.
Vérifications
- Tester host/port MySQL et service base.
- Vérifier DB_NAME/USER/HOST sans exposer le mot de passe.
- Contrôler connexions, espace et santé DB.
Commandes / preuves
wp db checkwp config get DB_HOSTmysqladmin ping -h <dbhost>Résultat attendu
WordPress authentifie et wp db check accède aux tables.
Actions correctives
- Corriger disponibilité/credentials avec sauvegarde avant réparation table.
- Ne pas utiliser repair sans preuve de corruption.
Escalader si
Corruption InnoDB, serveur SQL saturé ou données critiques affectées.
05Conflit plugin ou thèmeModification contrôlée
Fonction casse après activation/update ou seulement avec combinaison de composants.
Vérifications
- Reproduire avec dernier changement identifié.
- Vérifier versions et dépendances PHP/WordPress.
- Comparer environnement de staging si disponible.
Commandes / preuves
wp plugin listwp theme listwp core versionRésultat attendu
Le conflit est reproductible avec un composant ou une version précise.
Actions correctives
- Rollback/update ciblé et tester avant production.
- Éviter désactivation en masse sur site actif.
Escalader si
Plugin métier indispensable ou conflit nécessite modification de code.
06Site WordPress lentLecture / sans risque
TTFB élevé, wp-admin lent ou pics CPU/SQL.
Vérifications
- Mesurer front, admin et requête statique séparément.
- Contrôler cron, requêtes lentes, autoload et plugins lourds.
- Vérifier cache et ressources hébergement.
Commandes / preuves
wp cron event list --due-nowwp option list --autoload=on --format=total_byteswp plugin listRésultat attendu
La lenteur est attribuée à PHP, SQL, cron, plugin ou couche externe.
Actions correctives
- Optimiser la cause mesurée, pas seulement ajouter du cache.
- Tester avant/après avec même URL et conditions.
Escalader si
Budget SQL/CPU hébergeur atteint, requête métier lente ou incident infrastructure.
07Formulaires / emails WordPress non reçusModification contrôlée
Formulaire valide mais notification absente ou finit en spam.
Vérifications
- Vérifier si WordPress génère réellement le mail.
- Contrôler SMTP/plugin, expéditeur et authentification domaine.
- Tester une boîte externe et consulter logs SMTP.
Commandes / preuves
wp plugin list | grep -i smtpwp option get admin_emailnslookup -type=txt <domaine>Résultat attendu
Le message est généré, accepté par SMTP et traçable jusqu’au destinataire.
Actions correctives
- Configurer SMTP authentifié et From cohérent avec domaine.
- Traiter délivrabilité SPF/DKIM/DMARC séparément du formulaire.
Escalader si
Service mail tiers rejette, domaine mal authentifié ou plugin formulaire ne déclenche pas le hook.
08Permissions / mise à jour impossibleModification contrôlée
WordPress ne peut écrire plugins, uploads ou effectuer une mise à jour.
Vérifications
- Lire owner/group/mode des chemins concernés.
- Identifier utilisateur PHP-FPM/Apache.
- Vérifier espace disque et méthode FS_METHOD.
Commandes / preuves
ls -ld wp-content wp-content/uploads wp-content/pluginswp core verify-checksumsdf -hRésultat attendu
Le processus web possède uniquement les droits nécessaires sur les chemins attendus.
Actions correctives
- Corriger ownership/mode minimal, jamais chmod -R 777.
- Sauvegarder avant update core/plugin.
Escalader si
Hébergement impose permissions spécifiques, filesystem read-only ou suspicion de compromission.
Checklist de fin d’intervention
- Retester front, wp-admin et fonction initialement touchée.
- Vérifier logs sans nouveau fatal.
- Confirmer sauvegarde après changement si nécessaire.
- Documenter plugin/thème/configuration modifiée.
- Retirer tout mode debug temporaire affiché.