Aller au contenu
Nous contacter

Dépannage et erreurs

Erreurs PHP WordPress : comment les lire et les corriger

Une erreur PHP peut rendre votre site WordPress inaccessible ou signaler une incompatibilité. Voici comment trouver le message utile, identifier sa cause et choisir une correction adaptée.

Un écran sombre affiche en gros plan des lignes de code colorées, avec des fonctions WordPress et des références à jQuery
Au sommaire

Pour corriger une erreur PHP WordPress, commencez par relever le message exact, le fichier et la ligne indiqués, puis recherchez l’action qui a déclenché le problème. Consultez les journaux plutôt que d’afficher les erreurs aux visiteurs. Désactivez ou corrigez ensuite le composant en cause, après avoir vérifié que vous disposez d’une sauvegarde exploitable.

Lire et localiser une erreur PHP WordPress

Un message PHP contient généralement un type d’erreur, une description, un chemin de fichier et un numéro de ligne. Il peut aussi comporter une trace d’appels, ou stack trace, qui montre les fonctions exécutées avant la panne.

Ces éléments donnent des pistes : extension incompatible, fonction manquante ou dépréciée, fichier absent, droits insuffisants, mémoire saturée ou problème de chargement automatique de classes. Ne désactivez pas tout au hasard avant d’avoir relevé ces informations : vous pourriez masquer temporairement la cause.

Reconnaître les principaux types d’erreurs

  • Fatal error : le script s’arrête. Une fonction ou une classe introuvable, une mémoire insuffisante ou une incompatibilité PHP peuvent en être à l’origine. Le site peut afficher un écran blanc ou une erreur critique.
  • Parse error ou syntax error : PHP ne peut pas interpréter le fichier. Cherchez notamment une accolade, une parenthèse ou un point-virgule manquant après une modification de code.
  • Warning : une opération pose problème, mais le script peut continuer. Un fichier impossible à inclure ou un argument invalide sont des pistes à examiner.
  • Notice : le message signale notamment une variable ou un index non défini. Même sans panne immédiate, son affichage peut perturber une page ou une réponse JSON.
  • Deprecated : le code utilise une fonctionnalité dépréciée. Vérifiez la compatibilité du composant concerné avec la version de PHP utilisée.

Interpréter le fichier et la ligne

Un chemin contenant /wp-content/plugins/ désigne une extension ; un chemin sous /wp-content/themes/ pointe vers un thème ou un thème enfant. Si le message mentionne /wp-includes/ ou /wp-admin/, l’erreur apparaît dans le cœur de WordPress, mais peut avoir été déclenchée par un appel d’une extension ou d’un thème.

La ligne indique où PHP rencontre la difficulté, pas nécessairement l’origine logique du défaut. Lisez également les premières entrées de la trace : le composant désigné peut subir un problème provoqué ailleurs.

Trouver les messages dans les journaux WordPress et serveur

Selon la configuration, vous pouvez trouver les informations à plusieurs endroits :

  • Dans le message d’erreur critique et, parfois, dans l’e-mail envoyé à l’adresse d’administration WordPress.
  • Dans wp-content/debug.log, si le journal de débogage WordPress est activé.
  • Dans les journaux Apache, Nginx ou PHP-FPM accessibles auprès de votre hébergeur. Ils peuvent contenir des erreurs que WordPress n’a pas enregistrées.
  • Dans un outil de surveillance, si vous en utilisez un, pour rapprocher l’incident d’une mise à jour, d’une tâche planifiée ou d’un changement de trafic.

Activer le journal sans afficher les erreurs

Avant de modifier wp-config.php, sauvegardez le fichier et vérifiez si les constantes suivantes y sont déjà définies. Ne les déclarez pas une seconde fois : modifiez les valeurs existantes si nécessaire.

Placez ces réglages avant la ligne indiquant d’arrêter les modifications :

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Reproduisez ensuite l’erreur, puis consultez wp-content/debug.log. Le journal peut contenir des chemins ou d’autres informations sensibles : limitez sa durée d’utilisation et assurez-vous qu’il ne soit pas accessible publiquement. Une fois le diagnostic terminé, désactivez le débogage ou rétablissez les réglages précédents.

Si le fichier reste vide ou n’est pas créé, vérifiez les droits d’écriture et les journaux de l’hébergeur. Une erreur survenant très tôt peut ne pas être enregistrée par WordPress.

Avec W-Maintenance

Faites analyser votre erreur PHP WordPress

W-Maintenance peut examiner les journaux et rechercher l’origine de la panne sur votre site.

Faire réparer mon site

Isoler la cause d’une erreur PHP sur WordPress

Une méthode de triage évite de confondre le symptôme avec sa cause. Notez chaque changement afin de pouvoir revenir en arrière.

  1. Reproduisez le problème. Relevez l’URL, l’action effectuée, le rôle de l’utilisateur et, si nécessaire, le navigateur. Vérifiez si l’erreur apparaît sur tout le site ou seulement dans une situation précise.
  2. Lisez la première erreur pertinente. Dans le journal, rapprochez l’heure de l’incident de la première occurrence : les messages suivants peuvent être des conséquences en cascade.
  3. Testez l’extension suspecte. Désactivez d’abord celle que le journal désigne. Si la cause reste inconnue, désactivez les extensions, puis réactivez-les une par une en reproduisant le problème.
  4. Testez le thème. Activez temporairement un thème WordPress par défaut installé sur le site pour vérifier si le thème actuel ou son thème enfant intervient dans la panne.
  5. Vérifiez les caches. Après correction, videz si nécessaire le cache de l’extension, celui du serveur et celui du CDN pour éviter de consulter une réponse obsolète.
  6. Contrôlez les limites serveur. Examinez la mémoire, le délai d’exécution, la taille des fichiers téléversés et le nombre de processus autorisés.

Ces tests peuvent modifier des fonctionnalités visibles ou interrompre des opérations en cours. Si possible, effectuez-les d’abord sur une copie de test. Pour une panne plus large, la démarche de réparation d’un site WordPress permet de traiter aussi les problèmes de configuration ou d’hébergement.

Si l’administration est inaccessible

Pour une erreur critique ou un écran blanc, consultez d’abord l’e-mail d’administration et les journaux. Si une extension est clairement désignée, connectez-vous par FTP ou SFTP et renommez temporairement son dossier, par exemple de mon-plugin à mon-plugin.off. WordPress ne pourra plus la charger et la désactivera.

Pour tester le thème lorsque l’administration est inaccessible, renommez son dossier uniquement après avoir vérifié qu’un thème par défaut compatible est installé. WordPress pourra alors tenter de revenir à ce thème. Les étapes de diagnostic de l’erreur critique WordPress complètent cette recherche.

Corriger les erreurs PHP et les pannes associées

Erreur après une mise à jour

Une extension peut devenir incompatible avec PHP, un thème peut attendre une fonction fournie par une extension, ou une modification de WordPress peut révéler un code incompatible. Une classe introuvable, de nouveaux warnings ou une administration inaccessible sont des symptômes possibles.

Identifiez d’abord ce qui a changé : cœur WordPress, extension, thème ou version de PHP. Si nécessaire, revenez temporairement à un état connu et compatible à l’aide d’une restauration ou d’un retour arrière contrôlé, puis testez une mise à jour cohérente de l’ensemble. Consultez aussi la procédure en cas de problème de mise à jour WordPress.

Mémoire PHP insuffisante

Le message Allowed memory size exhausted indique que le processus a atteint la limite de mémoire autorisée. Il peut apparaître pendant un import, une sauvegarde, une opération d’administration ou l’exécution d’une extension gourmande.

Vérifiez les limites PHP et WordPress ainsi que les ressources autorisées par votre hébergement. Augmenter la mémoire peut aider si l’hébergeur le permet, mais cherchez aussi ce qui consomme les ressources : extension à remplacer, requêtes à optimiser ou opération lourde à répartir. Sur un hébergement mutualisé, les quotas peuvent rester une contrainte même après modification du réglage WordPress.

Erreur 500 et plantage serveur

Une erreur 500 ne désigne pas nécessairement PHP. Elle peut venir d’un crash PHP, d’une configuration serveur, d’un fichier .htaccess incorrect, de droits inadaptés, d’un délai dépassé ou d’une mise à jour interrompue.

Consultez les journaux serveur à l’heure de l’incident. Vérifiez ensuite les limites de mémoire et de temps d’exécution, les règles de réécriture et les changements récents. Un conflit de cache ou une extension qui boucle peut également être en cause.

Erreur de connexion à la base de données

Le message Error establishing a database connection ne fournit pas toujours une erreur PHP détaillée. Il peut indiquer des identifiants incorrects dans wp-config.php, un serveur de base de données indisponible, trop de connexions, une base endommagée ou un espace disque saturé.

Vérifiez d’abord que le serveur de base de données répond et que les paramètres de connexion correspondent à ceux fournis par l’hébergeur. Contrôlez ensuite l’espace disponible, la charge et l’état des tables. Avant toute réparation de base, disposez d’une sauvegarde exploitable.

Erreur de syntaxe après ajout de code

Si le site tombe immédiatement après un ajout dans functions.php ou dans une extension de snippets, revenez sur cette modification. Par FTP ou SFTP, ouvrez le fichier concerné, repérez la ligne indiquée et vérifiez les accolades, parenthèses, guillemets et points-virgules. Vous pouvez aussi rétablir la version précédente du fichier si vous en disposez.

Pour les changements suivants, utilisez un environnement de test et un éditeur doté d’une vérification syntaxique. Une extension de snippets capable de désactiver un code fautif peut également limiter les conséquences d’une erreur.

Fonctions dépréciées et incompatibilités PHP

Les messages Deprecated, Uncaught TypeError ou Call to undefined function peuvent apparaître lorsqu’un thème ou une extension n’est pas compatible avec la version de PHP utilisée. Vérifiez les versions prises en charge, puis mettez à jour le composant concerné ou remplacez-le s’il n’est plus maintenu.

Pour le code personnalisé, testez les changements sur une copie du site et documentez leur rôle. Vérifiez les arguments transmis aux fonctions, l’existence des fonctions ou classes nécessaires et l’utilisation des hooks WordPress.

Stabiliser le site et prévenir les erreurs récurrentes

Commencez par une correction minimale qui rétablit le fonctionnement : désactivation ciblée, retour arrière contrôlé ou correction de syntaxe. Testez ensuite les pages et fonctions concernées, puis traitez la cause durablement par une mise à jour, un remplacement ou une correction du code.

Évitez de masquer les erreurs à la place de les résoudre. L’arrêt des journaux ou l’ajout systématique de @ devant des fonctions ne corrige pas un argument invalide, une classe absente ou une incompatibilité PHP.

Vérifier l’hébergement et les sauvegardes

Des ressources insuffisantes ou des réglages inadaptés peuvent contribuer aux dépassements de mémoire, aux délais d’exécution et aux erreurs 500. Examinez les ressources disponibles, les journaux, les sauvegardes, les versions PHP et MySQL proposées ainsi que l’assistance de l’hébergeur.

Avant une intervention importante, vérifiez que vous pouvez restaurer les fichiers et la base de données. Si plusieurs problèmes se cumulent — extensions obsolètes, code personnalisé difficile à suivre, droits incohérents ou base encombrée — prévoyez un audit et des tests plutôt qu’une succession de correctifs isolés.

Garder une trace des changements

Une documentation courte facilite le prochain diagnostic : liste des extensions indispensables, réglages serveur, emplacement du code personnalisé, accès utiles, procédure de restauration et historique des modifications. Le guide pour documenter son site WordPress aide à organiser ces informations.

Prévoyez aussi des mises à jour contrôlées, des tests sur une copie du site, des sauvegardes vérifiées et une revue régulière des journaux et des extensions. Si l’erreur revient, si l’administration est inaccessible ou si la base et le serveur sont en cause, une analyse plus approfondie peut être nécessaire.

Avec W-Maintenance

Confiez la réparation de votre site WordPress

La réparation d’une erreur récurrente ou d’un site inaccessible peut nécessiter une intervention sur le code et l’hébergement.

Voir les formules

À retenir

  • Relevez le type d’erreur, le message, le fichier, la ligne et le contexte avant de modifier le site.
  • Utilisez les journaux WordPress et serveur sans afficher les erreurs aux visiteurs.
  • Testez d’abord le composant suspect, puis les extensions et le thème de façon méthodique.
  • Une erreur 500 ou une panne de base de données ne provient pas forcément de PHP.
  • Après le correctif immédiat, vérifiez les sauvegardes, la compatibilité et les ressources de l’hébergement.

Questions fréquentes

Où trouver les erreurs PHP de WordPress ?

Vous pouvez consulter wp-content/debug.log si le journal de débogage est activé. Les journaux du serveur et l’e-mail d’erreur critique de WordPress peuvent aussi fournir des indications.

Comment corriger une erreur PHP si l’administration est inaccessible ?

Consultez d’abord le message et les journaux pour identifier le composant suspect. Si une extension est en cause, vous pouvez renommer temporairement son dossier par FTP ou SFTP pour empêcher son chargement.

Faut-il augmenter la mémoire pour corriger une erreur PHP ?

Une augmentation peut aider lorsque le message indique que la limite de mémoire est atteinte et que l’hébergement le permet. Vérifiez aussi la consommation des extensions et les opérations lourdes afin de ne pas traiter uniquement le symptôme.

Article rédigé avec l’aide d’une IA à partir des sources citées et de notre pratique de la maintenance WordPress. Notre méthode éditoriale.

Parlons de votre site

Un souci avec votre site WordPress ?

Mises à jour, panne, piratage, lenteur : décrivez-nous la situation, un expert vous répond en général dans les deux heures ouvrées.

Décrire mon problèmeVoir les formules

Nous contacter