Résoudre les erreurs WordPress courantes : guide de dépannage
WordPress est robuste, mais des erreurs surviennent inévitablement : après une mise à jour de plugin, un changement de serveur, ou une manipulation en base de données. Ce guide couvre les erreurs les plus fréquentes avec leurs solutions concrètes, testées et vérifiées. Gardez cette page en favoris — vous en aurez besoin un jour.
1. Écran blanc de la mort (WSOD)
L’écran blanc (White Screen of Death) affiche une page entièrement blanche, sans aucun message d’erreur. C’est l’erreur la plus stressante car elle ne donne aucun indice.
Causes fréquentes
- Plugin incompatible ou défectueux
- Thème cassé après mise à jour
- Limite mémoire PHP dépassée
- Erreur de syntaxe dans functions.php
Solution étape par étape
Étape 1 : Activer le mode debug
Accédez à wp-config.php via FTP (FileZilla) ou le gestionnaire de fichiers de votre hébergeur :
// Remplacez cette ligne :
define('WP_DEBUG', false);
// Par ceci :
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
// Les erreurs seront écrites dans wp-content/debug.log
Rechargez la page, puis consultez le fichier wp-content/debug.log pour voir l’erreur exacte.
Étape 2 : Désactiver tous les plugins
Si vous ne pouvez pas accéder au back-office :
# Via FTP : renommez le dossier plugins
wp-content/plugins → wp-content/plugins_OFF
# Si le site revient : un plugin est en cause
# Renommez plugins_OFF → plugins
# Puis renommez chaque plugin un par un pour trouver le coupable :
wp-content/plugins/plugin-suspect → wp-content/plugins/plugin-suspect_OFF
Étape 3 : Changer de thème
# Via FTP : renommez votre thème actif
wp-content/themes/mon-theme → wp-content/themes/mon-theme_OFF
# WordPress basculera automatiquement sur un thème par défaut (Twenty Twenty-Four)
# Si le site revient : le thème est en cause
Étape 4 : Augmenter la mémoire PHP
// Dans wp-config.php :
define('WP_MEMORY_LIMIT', '256M');
// Ou dans .htaccess :
php_value memory_limit 256M
// Ou dans php.ini (si accessible) :
memory_limit = 256M
2. Erreur 500 — Internal Server Error
L’erreur 500 est un problème côté serveur. WordPress n’en est pas toujours la cause.
Solutions
Vérifier le fichier .htaccess :
# Renommez .htaccess en .htaccess_backup via FTP
# Puis créez un nouveau .htaccess avec le contenu par défaut WordPress :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Vérifier la version PHP :
WordPress 6.x nécessite PHP 7.4 minimum (8.1+ recommandé). Vérifiez dans votre panel d’hébergement (cPanel, Plesk) : PHP → Sélectionner la version PHP.
Vérifier les permissions des fichiers :
# Permissions correctes (via SSH ou FTP) :
# Dossiers : 755
find /var/www/html -type d -exec chmod 755 {} \;
# Fichiers : 644
find /var/www/html -type f -exec chmod 644 {} \;
# wp-config.php : 600 (plus restrictif)
chmod 600 wp-config.php
3. Erreur de connexion à la base de données
Le message « Error establishing a database connection » signifie que WordPress ne peut pas se connecter à MySQL.
Vérifications
// Ouvrez wp-config.php et vérifiez ces 4 lignes :
define('DB_NAME', 'nom_de_la_base'); // Nom correct ?
define('DB_USER', 'utilisateur'); // Utilisateur correct ?
define('DB_PASSWORD', 'mot_de_passe'); // Mot de passe correct ?
define('DB_HOST', 'localhost'); // Host correct ?
// Certains hébergeurs utilisent une adresse spécifique, pas "localhost"
Tester la connexion
Créez un fichier temporaire test-db.php à la racine :
<?php
$conn = new mysqli('localhost', 'utilisateur', 'mot_de_passe', 'nom_base');
if ($conn->connect_error) {
die('Échec : ' . $conn->connect_error);
}
echo 'Connexion réussie !';
$conn->close();
// SUPPRIMEZ ce fichier après le test !
Réparer la base de données
// Ajoutez dans wp-config.php :
define('WP_ALLOW_REPAIR', true);
// Puis accédez à :
// https://votresite.com/wp-admin/maint/repair.php
// Cliquez "Réparer la base de données"
// IMPORTANT : retirez cette ligne après la réparation !
4. Erreur 404 sur toutes les pages (sauf l’accueil)
L’accueil fonctionne mais toutes les autres pages donnent une erreur 404. C’est un problème de permaliens.
Solution rapide
- Allez dans Réglages → Permaliens
- Sans rien changer, cliquez simplement « Enregistrer les modifications »
- Cela régénère le fichier .htaccess
Si le back-office est inaccessible
# Remplacez le contenu de .htaccess par les règles WordPress par défaut
# (voir la section Erreur 500 ci-dessus)
# Si vous êtes sur Nginx au lieu d'Apache, ajoutez dans la config :
location / {
try_files $uri $uri/ /index.php?$args;
}
5. Dépassement de la taille maximale d’upload
Le message « Le fichier dépasse la taille maximale » apparaît quand vous essayez d’uploader une image ou un fichier trop lourd.
Augmenter la limite
// Méthode 1 : .htaccess
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300
// Méthode 2 : php.ini
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
// Méthode 3 : wp-config.php
@ini_set('upload_max_filesize', '64M');
@ini_set('post_max_size', '64M');
// Méthode 4 : functions.php
add_filter('upload_size_limit', function() {
return 64 * 1024 * 1024; // 64 Mo en octets
});
Vérifiez la limite actuelle dans Médias → Ajouter — la taille max est affichée sous le bouton d’upload.
6. « Brièvement indisponible pour maintenance »
Ce message apparaît quand WordPress est interrompu pendant une mise à jour. Un fichier .maintenance est resté à la racine.
Solution
# Connectez-vous en FTP et supprimez le fichier :
/.maintenance
# C'est tout. Le site revient immédiatement.
7. Erreur « Votre PHP manque de mémoire »
Le message « Allowed memory size of XXX bytes exhausted » indique que PHP n’a plus assez de RAM.
// Dans wp-config.php, augmentez la mémoire :
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M'); // Pour l'admin
// Si votre hébergeur limite la mémoire, contactez-le
// ou passez à une offre supérieure
8. Boucle de redirection (ERR_TOO_MANY_REDIRECTS)
Le navigateur affiche « Cette page ne fonctionne pas » avec une boucle de redirection infinie.
Causes et solutions
// 1. Vérifier les URL dans la base de données
// Ouvrez wp-config.php et ajoutez :
define('WP_HOME', 'https://votresite.com');
define('WP_SITEURL', 'https://votresite.com');
// Attention : https ou http ? Vérifiez que c'est cohérent
// 2. Effacer les cookies du navigateur
// Chrome : F12 → Application → Cookies → Effacer
// 3. Vérifier .htaccess pour des redirections en double
// (HTTP vers HTTPS fait par .htaccess ET par un plugin)
Problème HTTP/HTTPS courant
# Si votre hébergeur utilise un proxy/load balancer (comme Cloudflare) :
# Ajoutez dans wp-config.php AVANT "require_once" :
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&
$_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
$_SERVER['HTTPS'] = 'on';
}
9. Login impossible — mot de passe oublié
Si l’email de réinitialisation ne fonctionne pas, réinitialisez directement en base de données :
Via phpMyAdmin
- Ouvrez phpMyAdmin depuis votre panel d’hébergement
- Sélectionnez votre base de données WordPress
- Ouvrez la table
wp_users - Trouvez votre utilisateur et cliquez « Modifier »
- Dans le champ
user_pass, sélectionnez la fonction MD5 - Entrez votre nouveau mot de passe et sauvegardez
Via WP-CLI
# Réinitialiser le mot de passe
wp user update admin --user_pass="NouveauMotDePasse123!"
# Créer un nouvel administrateur si l'ancien est verrouillé
wp user create nouvel_admin email@exemple.com --role=administrator --user_pass="MotDePasse"
Via functions.php (urgence)
// Ajoutez temporairement dans functions.php :
add_action('init', function() {
$user = get_user_by('login', 'admin');
if ($user) {
wp_set_password('NouveauMotDePasse123!', $user->ID);
}
});
// RETIREZ ces lignes immédiatement après la connexion !
10. Plugin ou thème cassé après mise à jour
Revenir à la version précédente
- Installez le plugin WP Rollback
- Allez dans Extensions → Extensions installées
- Sous le plugin problématique, cliquez « Rollback »
- Choisissez la version précédente et confirmez
Manuellement via FTP
# 1. Téléchargez la version précédente du plugin depuis wordpress.org
# (Onglet "Développement" → "Versions précédentes")
# 2. Via FTP, supprimez le dossier du plugin dans wp-content/plugins/
# 3. Uploadez la version précédente
11. Emails WordPress non envoyés
Les emails de WordPress (formulaire de contact, réinitialisation mot de passe, notifications) ne sont pas reçus. C’est très courant sur les hébergements mutualisés au Sénégal.
Solution : SMTP
- Installez le plugin WP Mail SMTP
- Configurez avec un service SMTP fiable :
| Service | Gratuit | Configuration |
|---|---|---|
| Brevo (ex-Sendinblue) | 300 emails/jour | SMTP : smtp-relay.brevo.com, Port : 587 |
| Gmail SMTP | 500 emails/jour | SMTP : smtp.gmail.com, Port : 587, App Password requis |
| Mailgun | 1000 emails/mois | SMTP fourni après inscription |
// Vérifier si WordPress envoie bien les emails
// Ajoutez temporairement dans functions.php :
add_action('init', function() {
if (isset($_GET['test_mail'])) {
$sent = wp_mail(
'votre@email.com',
'Test email WordPress',
'Si vous recevez ceci, les emails fonctionnent !'
);
echo $sent ? 'Email envoyé !' : 'Échec de l\'envoi.';
die();
}
});
// Accédez à votresite.com/?test_mail
// Puis RETIREZ ce code
12. Tableau de dépannage rapide
| Symptôme | Cause probable | Action immédiate |
|---|---|---|
| Page blanche | Plugin/thème/mémoire | Debug + désactiver plugins |
| Erreur 500 | .htaccess/PHP/permissions | Régénérer .htaccess |
| Erreur BDD | Identifiants/serveur MySQL | Vérifier wp-config.php |
| 404 partout | Permaliens | Réglages → Permaliens → Enregistrer |
| Upload refusé | Limite PHP | Augmenter upload_max_filesize |
| Mode maintenance bloqué | Fichier .maintenance | Supprimer via FTP |
| Boucle de redirection | HTTP/HTTPS conflits | Forcer URL dans wp-config.php |
| Login impossible | Mot de passe | Reset via phpMyAdmin |
| Emails non reçus | Pas de SMTP | Installer WP Mail SMTP + Brevo |
| Site très lent | Cache/images/plugins | Plugin cache + optimiser images |
Conseil final : avant toute manipulation de dépannage, faites une sauvegarde complète. Un problème peut en cacher un autre, et avoir un point de restauration vous sauve de la catastrophe. Utilisez UpdraftPlus pour des sauvegardes automatiques quotidiennes.