« Il y a eu une erreur critique sur ce site. » C’est le genre de message glaçant que l’on n’aime pas croiser sur son écran. 

Lorsqu’il s’y affiche, l’inquiétude grimpe. Votre site n’est plus accessible, que ce soit pour vos visiteurs et souvent pour vous-même. Et il faut agir vite pour le remettre d’aplomb.

Sans cela, ce sont du trafic, des ventes, et aussi un peu de votre image de marque qui s’évaporent.

Un chat entre dans une haie.

Bonne nouvelle : derrière ce message très ennuyeux se cache souvent un problème qu’il est possible de diagnostiquer grâce aux bonnes méthodes.

Dans cet article, vous allez découvrir ce que cette erreur signifie vraiment, comment la réparer pas à pas et quelles bonnes pratiques adopter pour qu’elle évite de revenir vous enquiquiner.

Hébergez votre site chez o2switch

Faites comme WPMarmite, choisissez o2switch. Non seulement les performances sont au rendez-vous mais le support est exceptionnel.

ESSAYEZ O2SWITCH
o2switch

Que signifie le message « Il y a eu une erreur critique sur ce site » ?

WordPress affiche sur votre écran le message « Il y a eu une erreur critique sur ce site » pour vous informer qu’un morceau de son code – un script PHP pour être précis – n’a pas pu s’exécuter jusqu’au bout.

Message « Il y a eu une erreur critique sur ce site » affiché par WordPress.

C’est une erreur fatale pour ce script, mais pas pour votre site. Ce qui est plutôt une bonne nouvelle : ce message n’est pas le signe d’un piratage ou d’une catastrophe irréversible. 

En fait, c’est une nette amélioration par rapport à ce que l’on appelait « l’Ecran blanc de la mort » (le fameux White Screen of Death). Avant la version 5.2 de WordPress, sortie en mai 2019, vous n’aviez qu’une page désespérément blanche, sans aucune piste. Maintenant, WordPress vous prévient au moins que quelque chose cloche. C’est un premier pas vers la solution.

Le vrai souci, c’est que cette erreur bloque souvent l’accès public à votre site et à votre propre tableau de bord. Comment réparer si vous ne pouvez plus entrer sur votre interface d’administration ? Rassurez-vous, il existe des portes dérobées, et on va voir ensemble comment les utiliser.

Vous allez voir, le plus dur n’est pas de corriger, mais de trouver la source du problème. C’est un véritable travail de détective qui commence, alors commençons à mener l’enquête.

Quelles sont les causes de l’erreur « Il y a eu une erreur critique sur ce site »

Alors, qui sont les coupables habituels derrière ce message ? En général, le problème se cache dans quelques grandes familles.

Le suspect numéro un, et de loin le plus fréquent, est un conflit d’extensions. Un plugin WordPress mal codé, plus à jour, ou simplement incompatible avec un autre peut suffire à tout casser. Une simple mise à jour peut parfois déclencher le chaos.

Ensuite, on va voir du côté de votre thème. Tout comme pour les plugins, votre thème actif peut contenir une erreur dans son code. C’est souvent le cas s’il a été modifié – via le fichier functions.php par exemple – ou s’il n’est plus compatible après une mise à jour de WordPress.

Une autre cause courante est une limite de mémoire PHP insuffisante. Imaginez que votre site est une voiture et que PHP est son moteur.

Si le moteur n’a pas assez de carburant (la mémoire) pour une tâche lourde, il cale. C’est ce qui se passe ici. Des scripts ou plugins gourmands peuvent provoquer ce dépassement.

Enfin, il existe d’autres pistes, plus rares mais à ne pas écarter, comme :

  • une version de PHP obsolète ou incompatible ;
  • une corruption des fichiers principaux de WordPress ou de la base de données ;
  • un problème de mise en cache. 

La bonne nouvelle ? On va passer en revue chaque suspect, un par un, et vous montrer comment l’innocenter ou le coincer. Pas de panique, des solutions existent.

Comment corriger une erreur critique sur votre site WordPress ?

Avant toute manipulation, une règle d’or : faites une sauvegarde complète de votre site (fichiers + base de données). Toujours. C’est non négociable.
Pour cela, servez-vous d’une
extension dédiée ou d’un outil de maintenance comme WP Umbrella.
Si l’accès au tableau de bord est impossible, la plupart des hébergeurs proposent un outil de sauvegarde en un clic dans leur interface. C’est votre filet de sécurité, la seule chose qui garantit un retour en arrière si une manipulation tourne mal.

Accédez à l’email de débogage de WordPress

Depuis WordPress 5.2 (au passage, on espère que vous utilisez une version plus récente du CMS ^^), WordPress intègre nativement un « mode de récupération » (recovery mode en anglais).

Voici comment ça fonctionne : lors d’une mise à jour, si un thème ou une extension fait planter votre site, le CMS désactive automatiquement le thème ou l’extension associé au bug.

Il affiche alors ce type de message plutôt qu’un Ecran blanc de la mort : « Une erreur critique est survenue sur ce site. Veuillez consulter la boîte de réception de l’e-mail d’administration de votre site pour plus d’informations. »

Message une erreur critique est survenue sur ce site.

Si cela se passe en votre absence (via une mise à jour automatique par exemple), vous recevez un e-mail contenant des informations sur le bug rencontré et sur le fait que votre site est passé en mode de récupération.

Cet email est précieux : il indique souvent le plugin ou le thème exact responsable du chaos, vous évitant de chercher une aiguille dans une botte de foin.

L’élément clé de cet email est le lien vers le mode de récupération (Recovery Mode). Ce lien magique permet de se connecter à votre tableau de bord dans un mode sécurisé qui désactive temporairement le composant fautif.

La marche à suivre est donc simple :

  • vérifiez votre boîte de réception (et vos spams) ;
  • cliquez sur le lien, connectez-vous à votre back office WordPress, et désactivez l’élément mentionné.

Avec ça, le problème est souvent résolu en quelques minutes. Si, pour X ou Y raison, vous n’avez pas reçu cet email, il va falloir mettre les mains dans le cambouis et trouver la solution par vous-même.

On vous aide à y voir plus clair tout de suite.

Videz le cache

Tentons une première action rapide : vider le cache (lisez notre guide sur le sujet). Le cache est une version enregistrée de votre site pour accélérer son chargement, mais il peut parfois conserver une « photographie » de l’erreur.

Si vous utilisez un plugin de cache comme WP Rocket, supprimez manuellement son contenu via FTP ou votre interface d’administration serveur, en supprimant le contenu du dossier wp-content/cache (on part du principe que vous ne pouvez pas accéder à votre admin WordPress) :  

Contenu du dossier wp-content/cache dans le gestionnaire de fichiers de cPanel.
Contenu du dossier wp-content/cache dans le gestionnaire de fichiers de cPanel.

Pour savoir comment vous connecter et vous servir du cPanel d’o2switch, consultez notre tuto complet sur le sujet.

Si le cache est géré par votre hébergeur, vous pourrez alors purger le cache directement depuis leur interface de réglages, sans avoir à recourir à l’usage d’une extension. 

À titre d’exemple, o2switch (lien aff) propose d’activer LsCache. Par ailleurs,vous pouvez aussi vous servir de l’outil XtremCache, un système de cache Varnish.

Cependant, son usage est plutôt réservé aux techniciens et utilisateurs avertis.

Désactivez tous vos plugins pour réparer l’erreur « Il y a eu une erreur critique sur ce site »

Si rien n’a fonctionné, passons au dépannage manuel en commençant par désactiver tous vos plugins. C’est la méthode la plus courante pour identifier un conflit.

Il vous faudra un accès aux fichiers du site via FTP/SFTP (avec un client comme FileZilla ou Cyberduck), ou le gestionnaire de fichiers de votre hébergeur (ex : cPanel).

Pour vous connecter au cPanel d’o2switch, vous pouvez au choix : 

  • cliquer sur le lien de connexion dans l’e-mail intitulé « Bienvenue chez o2switch », reçu après votre commande ;
  • taper l’URL de votre site, suivie de :2083 ;
  • utiliser l’adresse de secours : lorsque le port 2083 est bloqué, saisissez l’URL de votre site, et ajoutez cpanel. juste devant votre domaine. Exemple : https://cpanel.votre-domaine.tld.

Ensuite, rendez-vous dans l’encart « Fichiers », puis cliquez sur « Gestionnaire de fichiers ». 

Naviguez jusqu’au dossier racine du site appelé public_html (chez d’autres hébergeurs, il peut s’appeler www ou htdocs), puis entrez dans le dossier wp-content.

Renommez le dossier plugins (appelez-le par exemple plugins_test) :

Le dossier plugins

Une fois le dossier renommé, essayez d’afficher à nouveau votre site. Si le site fonctionne, bingo ! Un plugin est en cause.

Renommez le dossier à son nom d’origine (plugins), puis réactivez vos extensions une par une depuis le tableau de bord, en testant le site à chaque fois pour identifier le coupable.

Activez un thème par défaut

Si la désactivation des plugins n’a rien donné, le suspect suivant est votre thème. Un code défectueux ou une incompatibilité peut tout faire planter.

La méthode est similaire à la précédente. Les instructions :

  1. Naviguez vers wp-content/themes.
  2. Repérez le dossier de votre thème actif.
  3. Renommez-le (par exemple, mon-theme_old).

Si un thème par défaut de WordPress (comme Twenty Twenty-Five) est présent, WordPress basculera automatiquement dessus.

Sinon, téléchargez-en un depuis le site officiel de WordPress et téléversez-le avant de renommer le vôtre.

Si l’erreur disparaît, le problème vient de votre thème. Il faudra alors le mettre à jour, contacter son développeur ou le changer.

Un site vitrine dans les cartons ? On s’en occupe !

Concevoir un site WordPress de A à Z n’est pas de tout repos. Entre les choix techniques, graphiques et marketing, il y a de quoi se perdre…

WPMarmite Start simplifie le processus pour vous permettre de vous concentrer sur l’essentiel : votre activité.

✓ 100% propriétaire de votre site ✓ Optimisé pour Google ✓ Sécurité et support inclus

WPMarmite Start

Restaurez une sauvegarde de votre site

L’activation d’un thème par défaut n’a rien changé et le message « Il y a eu une erreur critique sur ce site » (ou celui-ci : « Une erreur critique est survenue sur ce site. Veuillez consulter la boîte de réception de l’e-mail d’administration de votre site pour plus d’informations ») continue de s’afficher à l’écran ?

Testez une nouvelle méthode : la restauration de votre site WP. C’est une option qui peut faire mouche si l’erreur est apparue juste après une manipulation précise.

Techniquement, comment vous y prendre ? Déjà, vous devez disposer d’une sauvegarde viable de votre site. 

Pour cela, il est par exemple nécessaire de les avoir automatisées avec des extensions comme UpdraftPlus ou WP Umbrella.

Autre possibilité ? Profiter des sauvegardes automatiques proposées par votre hébergeur. Pas mal d’entre eux disposent de cette option, et c’est le cas d’o2switch, l’hébergeur que WPMarmite utilise depuis 2017 et recommande. 

Si l’on prend l’exemple de l’offre Unique « Cloud » d’o2switch (lien aff), les sauvegardes sont réalisées automatiquement tous les jours (sauf exception) et conservées pendant 45 jours.

Pour restaurer la sauvegarde de votre choix, passez par l’outil JetBackup proposé par o2switch sur cPanel.

L'option JetBackup 5 sur cPanel.

Ensuite, choisissez de restaurer en un clic votre site entier (fichiers + base de données), avec la méthode détaillée dans cet article.

Choisissez une date antérieure à l’erreur et lancez l’opération. Attention, cette action effacera toutes les modifications (nouveaux articles, commentaires, ventes…) effectuées entre la date de la sauvegarde et maintenant.

C’est un retour en arrière, mais c’est parfois le moyen le plus sûr de remettre votre site sur pied.

Activez le mode débogage de WordPress

Si cela n’a toujours rien donné, passons à une méthode un peu plus technique. Pour jouer les détectives, le mode débogage (debug) force WordPress à afficher l’erreur PHP exacte qui cause le plantage. C’est un diagnostic plus avancé qui vous donne des indices concrets.

Par mesure de sécurité, il vaut mieux l’utiliser sur un environnement de test (mais bon, si votre site est cassé, vous n’êtes plus à ça près).

Pour l’activer, ça se passe dans le fichier wp-config.php, situé à la racine du site.

Trouvez la ligne define( 'WP_DEBUG', false ); et remplacez-la par les trois lignes suivantes :

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

La première ligne active le débogage, la deuxième crée un journal d’erreurs (debug.log) dans wp-content, et la troisième, cruciale, empêche l’affichage public des erreurs. Téléversez le fichier, rechargez la page en erreur, puis lisez le fichier debug.log.

La dernière ligne vous indiquera le fichier et le code problématiques. N’oubliez pas de désactiver le mode débogage une fois le problème résolu (remplacez la valeur true par false).

Augmentez la mémoire PHP allouée à WordPress

Si le fichier debug.log mentionne une erreur « Allowed memory size of… exhausted », WordPress manque de mémoire vive.

C’est fréquent avec des plugins gourmands. Pour y remédier, éditez à nouveau le fichier wp-config.php.

Ajoutez la ligne suivante juste avant le commentaire /* C’est tout, ne touchez pas à ce qui suit ! */ :

define('WP_MEMORY_LIMIT', '128M');

Cette valeur peut être augmentée (‘512M’), mais si votre hébergeur impose une limite inférieure, cette modification sera sans effet.

Dans ce cas, il faudra contacter votre hébergeur pour demander une augmentation de cette limite serveur.

Mettez à jour la version de PHP

Utiliser une version de PHP récente (idéalement 8.x) est vital pour la sécurité et les performances. Une vieille version peut créer des incompatibilités fatales, et l’affichage du message d’erreur « Il y a eu une erreur critique sur ce site. »

Pour mettre à jour votre version PHP dans les règles de l’art, vous allez devoir suivre 6 étapes détaillées dans ce guide.

En résumé, vous allez devoir : 

  • sauvegarder votre site ; 
  • mettre à jour WordPress ; 
  • vérifier la compatibilité de votre site avec la version de PHP à mettre à jour ;
  • migrer votre site sur un environnement de test (staging ou local) ; 
  • mettre à jour PHP sur votre site en production ;
  • tester le bon fonctionnement de votre site.
Changement de la version de PHP sur cPanel.

Contactez le support de votre hébergeur

Si vous avez tout essayé et que le message « Il y a eu une erreur critique sur ce site » fait toujours des siennes, il est temps de passer le relais.

Le support technique de votre hébergeur a des outils et un accès que vous n’avez pas. Pour les aider, soyez précis : décrivez le contexte, l’erreur exacte, et les manipulations déjà effectuées.

Fournissez le contenu du fichier debug.log si possible. Plus vous donnerez d’infos, plus vite ils pourront vous aider. Chez o2switch, le support client est aux petits oignons. Pour contacter le support o2switch, consultez notre guide.

Ils vous répondront très vite et en français et feront tout leur possible pour trouver une solution à votre souci. 

Mesures préventives pour éviter de rencontrer le message « Il y a eu une erreur critique sur ce site » 

Réparer, c’est bien. Ne pas avoir à le faire, c’est encore mieux. Le secret d’un site WordPress serein est d’éviter que le problème ne se produise.

Pour garder votre site WordPress loin des erreurs critiques, adoptez les bonnes pratiques suivantes (attention, ce ne sont pas des formules magiques non plus ^^) : 

  1. Procédez à des mises à jour régulières et prudentes de vos thèmes et vos plugins. Mais attention, jamais tout en même temps. Procédez une par une. L’idéal est de tester ces mises à jour sur un site de test (staging) avant de les appliquer sur votre site en production.
  2. Choisissez des thèmes et plugins de qualité. Privilégiez des extensions bien notées, fréquemment mises à jour et avec un bon support technique. Fuyez les thèmes et plugins abandonnés ou téléchargés sur des sources douteuses. Ce sont des nids à problèmes.
  3. Mettez en place des sauvegardes automatiques et régulières, quotidiennes si votre site est très actif. De temps en temps, faites un test de restauration pour vérifier qu’elles sont bien fonctionnelles. Ne partez pas du principe que ça marche. Vérifiez !
  4. Surveillez la version de PHP. Il faut savoir que WordPress repose sur PHP. Assurez-vous que la version de PHP de votre hébergement est à jour et recommandée par WordPress. Une version obsolète est une faille de sécurité et de performance.
  5. Limitez le nombre d’extensions. Chaque plugin est une porte d’entrée potentielle aux problèmes. N’installez que ce qui est strictement nécessaire. Faites le ménage de temps en temps et désactivez, voire supprimez, ceux que vous n’utilisez plus.

Gérer un site WordPress, c’est un peu comme entretenir une maison. Un peu de maintenance préventive vous évitera de gros travaux d’urgence. Maintenant, vous avez les outils pour réparer et les clés pour prévenir tout souci (même si une erreur peut toujours arriver, malgré tout).

En résumé, le message « Il y a eu une erreur critique sur ce site » peut faire peur, mais il signale simplement qu’un script WordPress n’a pas pu s’exécuter correctement.

Les causes les plus courantes sont un conflit d’extensions ou de thème, un manque de mémoire PHP, une version de PHP obsolète ou un fichier WordPress corrompu.

Grâce aux méthodes que vous venez de découvrir tout au long de ces lignes (désactivation des plugins, changement de thème, mode debug, augmentation de mémoire, mise à jour PHP), vous pouvez identifier puis corriger l’origine du problème.

Avec quelques bonnes pratiques, vous éviterez même qu’il ne réapparaisse. Maintenant, à vous de jouer !