Résumé de l’article
Une page blanche, ou le message « Il y a eu une erreur critique sur ce site », c’est presque toujours une erreur PHP fatale causée par une extension, un thème ou une version de PHP incompatible. Dans cet article, nous vous donnons une méthode simple et sûre pour retrouver le coupable : l’e-mail du mode de récupération, le journal d’erreurs, la désactivation ciblée des extensions et les bons réflexes pour éviter que cela se reproduise.
Le mois d’août a ses classiques. Les bureaux se vident, les prestataires sont en congés, les mises à jour automatiques continuent de tourner… et c’est souvent à ce moment-là qu’un site décide de s’afficher en blanc. Nous traitons chaque été un nombre impressionnant d’appels pour ce symptôme. La bonne nouvelle, c’est que dans l’immense majorité des cas, rien n’est perdu : vos contenus sont toujours dans la base de données, seul l’affichage est bloqué. Encore faut-il savoir où chercher.
Erreur critique WordPress : ce qui se passe vraiment
Quand une partie du code PHP de votre site rencontre une erreur qu’il ne sait pas gérer, l’exécution s’arrête net. Pendant des années, le résultat était un écran entièrement blanc, le fameux « écran blanc de la mort ». Depuis WordPress 5.2, sorti en mai 2019, WordPress intercepte ces erreurs fatales et affiche à la place un message indiquant qu’une erreur critique s’est produite. Le symptôme a changé de visage, mais la cause reste la même.
Les causes les plus fréquentes
- Une mise à jour d’extension incompatible avec votre version de WordPress, de PHP ou avec une autre extension.
- Une mise à jour du thème, ou une modification directe de son fichier functions.php.
- Un changement de version de PHP effectué par votre hébergeur, qui rend un vieux code incompatible.
- Une limite de mémoire PHP atteinte par une page ou une extension trop gourmande.
- Plus rarement, des fichiers corrompus après une mise à jour interrompue ou une infection.
La méthode pas à pas pour retrouver le coupable
1. Regardez vos e-mails avant de toucher à quoi que ce soit
Lors d’une erreur fatale, WordPress envoie en général un e-mail à l’adresse d’administration du site. Il indique souvent l’extension ou le thème en cause, et contient surtout un lien vers le mode de récupération. Ce mode vous permet de vous connecter à l’administration en mettant en pause l’élément fautif, uniquement pour votre session. Vous pouvez alors le désactiver, le mettre à jour ou le remplacer. Pensez à vérifier vos indésirables : ces e-mails y atterrissent fréquemment.
2. Rappelez-vous ce qui a changé
Une panne a presque toujours un déclencheur. Une mise à jour cette nuit ? Une nouvelle extension installée hier ? Un message de l’hébergeur annonçant un changement de PHP ? Le journal des mises à jour de votre outil de maintenance, ou la date de modification des dossiers d’extensions, vous mettra souvent sur la piste en quelques secondes.
3. Activez le journal d’erreurs
Si l’e-mail n’est pas arrivé, il faut lire l’erreur exacte. WordPress propose pour cela un mode de débogage, décrit dans la documentation officielle. En ajoutant dans le fichier wp-config.php les constantes WP_DEBUG et WP_DEBUG_LOG à true, et WP_DEBUG_DISPLAY à false, les erreurs sont enregistrées dans le fichier wp-content/debug.log sans être affichées à vos visiteurs. La dernière ligne de type « Fatal error » indique généralement le fichier fautif, et donc l’extension ou le thème concerné.
Attention : la documentation rappelle que ces outils ne sont pas faits pour rester actifs sur un site en production. Une fois le diagnostic posé, désactivez-les et supprimez le fichier debug.log, qui peut contenir des informations sensibles.
4. Désactivez l’extension en cause
Si vous n’avez pas accès à l’administration, passez par le gestionnaire de fichiers de votre hébergeur ou par FTP. Dans le dossier wp-content/plugins, renommez le dossier de l’extension suspecte, par exemple en ajoutant « -off » à la fin de son nom. WordPress la considérera comme désactivée. Si vous ignorez laquelle est en cause, renommez le dossier plugins lui-même, vérifiez que le site revient, puis réactivez les extensions une par une jusqu’à retrouver la fautive.
5. Testez avec un thème par défaut
Si les extensions ne sont pas en cause, le problème vient probablement du thème. Renommez de la même façon le dossier de votre thème dans wp-content/themes : WordPress basculera sur un thème par défaut s’il en trouve un installé. C’est d’ailleurs une bonne raison de toujours garder un thème par défaut à jour sur votre site, même si vous ne l’utilisez pas.
6. Vérifiez la version de PHP et la mémoire
Si l’erreur mentionne une mémoire épuisée (« Allowed memory size exhausted »), la limite peut être relevée, mais une extension qui consomme anormalement doit surtout être remise en question. Si le problème est apparu après un changement de PHP, votre hébergeur permet généralement de revenir temporairement à la version précédente, le temps de mettre à jour le code incompatible. Ne restez pas indéfiniment sur une version ancienne pour autant.
Les bons réflexes pour ne plus subir la panne
- Ayez des sauvegardes automatiques externalisées, et testez une restauration au moins une fois.
- Évitez les mises à jour automatiques sans surveillance sur un site critique, surtout quand personne n’est disponible pour réagir.
- Utilisez un site de préproduction pour tester les mises à jour importantes.
- Vérifiez que l’adresse e-mail d’administration est valide et consultée, pour recevoir le lien du mode de récupération.
- Supprimez les extensions inutilisées ou abandonnées : moins de code, moins de risques de conflit.
Notre avis
Nous aimons
Le mode de récupération introduit avec WordPress 5.2. Il a transformé une panne angoissante en incident souvent réglable en quelques minutes, à condition de recevoir et de lire l’e-mail.
Nous n’aimons pas du tout
Les corrections faites dans l’urgence directement sur le site en production, sans sauvegarde, en modifiant au hasard des fichiers du cœur ou du thème. C’est la meilleure façon de transformer une panne de dix minutes en journée perdue.
En conclusion :
Une erreur critique sur WordPress fait peur, mais elle se résout presque toujours avec méthode : e-mail du mode de récupération, journal d’erreurs, désactivation ciblée de l’extension ou du thème en cause, puis vérification de PHP. Si vous n’avez pas accès aux fichiers, si le site reste blanc malgré ces étapes ou si vous préférez ne pas y passer vos vacances, l’équipe DépannageWP intervient rapidement pour remettre votre site en ligne.