Journal des erreurs WordPress : où trouver l’erreur et ce que disent les messages
Le journal des erreurs WordPress regroupe les fichiers où le serveur, WordPress et les extensions notent les détails des erreurs : le message, le fichier et la ligne. Cherchez à trois endroits : debug.log dans le dossier wp-content (une fois la journalisation activée dans wp-config.php), le panneau d’hébergement, et WooCommerce → État → Journaux. Sans eux, corriger une erreur, c’est deviner.
Auteur: L’équipe TellMyShop. Un guide pour les propriétaires de sites WordPress et de boutiques WooCommerce : la cause, la correction manuelle et le même travail dans une conversation avec le chat.
Dernière mise à jour: · 6 min de lecture
Trois endroits où chercher
Chacun de ces endroits note autre chose. Vérifiez-les dans cet ordre, du plus simple au plus difficile.
| Endroit | Ce qui y est noté | Comment y accéder | Qui y a accès en général |
|---|---|---|---|
| WooCommerce → État → Journaux, fichier fatal-errors | erreurs PHP fatales avec le fichier et la ligne | le tableau de bord, s’il fonctionne | vous |
| debug.log dans wp-content | erreurs, avertissements et notices de WordPress et des extensions | gestionnaire de fichiers de l’hébergement ou FTP, une fois la journalisation activée | vous ou la personne qui s’occupe du site |
| Journal des erreurs PHP du serveur | erreurs PHP, même quand WordPress ne se charge pas du tout | panneau d’hébergement | l’hébergeur, parfois vous |
Une boutique WooCommerce a un avantage : le journal fatal-errors fonctionne sans fouiller dans les fichiers. WooCommerce lui-même recommande de commencer par là, comme le décrit la documentation WooCommerce sur la recherche des journaux d’erreurs PHP.
Comment activer debug.log étape par étape
La journalisation dans debug.log s’active dans wp-config.php. Ce fichier contient le mot de passe de votre base de données, travaillez donc sur une copie et avec prudence. Si vous n’êtes pas sûr de vous, demandez à votre hébergeur ou à la personne qui s’occupe du site.
- Faites une copie de wp-config.php dans le gestionnaire de fichiers de l’hébergement.
- Ouvrez wp-config.php en modification et trouvez la ligne avec WP_DEBUG.
- Réglez WP_DEBUG sur true, ajoutez WP_DEBUG_LOG réglé sur true et WP_DEBUG_DISPLAY réglé sur false.
- Enregistrez le fichier et répétez ce qui déclenche l’erreur, par exemple ouvrez la page ou ajoutez un produit au panier.
- Ouvrez wp-content/debug.log et lisez les dernières lignes.
- Quand vous avez fini, remettez WP_DEBUG sur false.
Toutes les constantes et leur rôle sont décrits dans le manuel de débogage de WordPress. Une courte explication du fichier lui-même se trouve dans l’entrée du glossaire de GreenGeeks sur WP Debug Log.
Le fichier debug.log se trouve dans un dossier parfois accessible depuis un navigateur. Ne laissez pas la journalisation activée en permanence sans besoin, ou demandez à votre hébergeur de bloquer l’accès à ce fichier.
Comment lire une entrée du journal
Chaque entrée a une forme semblable : date et heure, niveau d’erreur, message, et à la fin le chemin du fichier et le numéro de ligne. Le chemin est le plus important. S’il contient wp-content/plugins/nom-de-l-extension, c’est cette extension qui est en cause. S’il contient wp-content/themes/nom-du-theme, c’est le thème.
Les niveaux, du plus grave :
- Fatal error : le code s’est arrêté, et la page ou une partie ne fonctionne pas.
- Warning : quelque chose s’est mal passé, mais la page continue.
- Notice et Deprecated : des notes pour les développeurs, en général sans effet pour les visiteurs.
Glossaire : cinq messages fréquents
Allowed memory size of … bytes exhausted. PHP a épuisé la mémoire qui lui était attribuée. Une extension gourmande ou une limite basse de l’hébergement peut être en cause. La limite de mémoire est augmentée par votre hébergeur ou la personne qui s’occupe du site.
Call to undefined function … Le code appelle une fonction qui n’existe pas. Une cause fréquente est une extension qui dépend d’une autre extension désactivée, ou un thème qui ne convient plus à une extension après une mise à jour.
Maximum execution time of … seconds exceeded. Un script a tourné plus longtemps que ne le permet le serveur. Cela arrive pendant un import, une grosse sauvegarde ou une connexion lente à un service externe.
Uncaught Error: Class … not found. Une partie du code d’une extension manque, par exemple après une mise à jour ratée. Réinstaller la même version de l’extension aide.
Cannot modify header information - headers already sent. Quelque chose a envoyé du texte au navigateur trop tôt. Très souvent, c’est une ligne vide ou un espace à la fin de functions.php après une modification à la main.
Les valeurs dans les messages varient d’un site à l’autre, elles sont donc remplacées par des points de suspension. Si le journal montre une erreur fatale et que le site est en panne, passez au guide sur l’erreur critique de WordPress. Pour un écran blanc ou un code 500, lisez l’article sur l’erreur 500 dans WordPress.
Quoi envoyer à votre hébergeur ou à votre développeur
Un signalement bien écrit évite plusieurs allers-retours. Indiquez :
- le message exact du journal, copié plutôt que retapé de mémoire, avec le chemin du fichier et le numéro de ligne,
- la date et l’heure de sa première apparition, et si l’erreur se répète,
- ce qui a changé juste avant : mise à jour d’une extension, du thème, de WordPress ou de la version de PHP,
- sur quelle page et lors de quelle action l’erreur apparaît, par exemple à l’ajout au panier,
- les versions de WordPress et de PHP depuis Outils → Santé du site → Infos.
Avant l’envoi, retirez de l’extrait les adresses e-mail et autres données clients.
Comment le chat lit les journaux pour vous
L’extension TellMyShop pour WordPress et WooCommerce lit les journaux d’erreurs même dans TellMyShop Free. Votre chat (Claude ou ChatGPT) reçoit les erreurs PHP, WordPress et WooCommerce des derniers jours, regroupées : un même message forme une ligne avec un nombre et la date de sa dernière apparition. Pour chacun, il indique l’extension ou le thème d’où il vient et explique le message avec des mots simples. Les e-mails, numéros de téléphone et adresses IP des journaux sont masqués.
Vous: Depuis hier, le panier ne se charge pas toujours. Jette un œil aux journaux.
Votre chat: Ces deux derniers jours, il y a une erreur fatale, répétée une douzaine de fois :
Allowed memory size exhausted, dans un fichier de l’extension de calcul des frais de port.
Elle n’apparaît qu’à l’ouverture du panier. L’extension a reçu une nouvelle version hier.
Ma proposition : signaler l’erreur à l’auteur ou revenir à la version précédente de l’extension. La limite de mémoire est l’affaire de votre hébergeur.
Le résultat de cette conversation est un exemple. Le chat lit ce qui a été noté. Si la journalisation dans debug.log est désactivée, il n’y aura rien dans le journal de WordPress. Le chat ne peut pas l’activer : wp-config.php est toujours bloqué pour l’extension, dans toutes les versions. C’est à vous, à votre hébergeur ou à la personne qui s’occupe du site de le faire.
Lire les journaux, la santé du site et la liste des extensions suffit pour un diagnostic, et c’est gratuit. Quand une extension est en cause, dans TellMyShop Pro le chat peut la désactiver ou la mettre à jour une fois l’interrupteur Extensions activé pour 24 heures, toujours avec un aperçu et après votre accord. Vous pouvez télécharger la version gratuite depuis la page TellMyShop Free, Pro est décrit sur la page TellMyShop pour WordPress et WooCommerce, et les différences sont sur la page des tarifs.
Questions et réponses
Où se trouve le fichier debug.log dans WordPress ?
Par défaut dans le dossier wp-content, mais seulement quand WP_DEBUG et WP_DEBUG_LOG sont activés dans wp-config.php. Le fichier est créé à la première erreur après l’activation de la journalisation. S’il n’y est pas, la journalisation est désactivée ou il n’y a eu aucune erreur depuis son activation.
Activer WP_DEBUG affichera-t-il les erreurs aux clients ?
C’est possible si vous laissez l’affichage des erreurs activé. Sur un site en ligne, vous journalisez dans un fichier avec l’affichage désactivé, c’est-à-dire WP_DEBUG_DISPLAY réglé sur false. Les erreurs vont alors seulement dans debug.log.
Les avertissements Deprecated doivent-ils être corrigés tout de suite ?
En général non. Ils disent qu’une extension ou un thème utilise une fonction qui disparaîtra de PHP ou de WordPress à l’avenir. Le site fonctionne, mais avant de changer de version de PHP, il vaut la peine de les signaler à l’auteur de l’extension ou de chercher une mise à jour.
Un journal des erreurs peut-il contenir des données clients ?
Oui, des adresses e-mail, des adresses IP ou des fragments de requêtes s’y retrouvent parfois. Ne publiez donc pas le fichier entier sur un forum et ne laissez pas la journalisation activée sans besoin. L’extension TellMyShop masque les e-mails, les numéros de téléphone et les adresses IP quand elle lit les journaux.
Qui a accès aux journaux du serveur ?
Votre hébergeur. Les journaux d’erreurs PHP du serveur sont en général dans le panneau d’hébergement, dans la section statistiques ou journaux. Si vous ne les y voyez pas, demandez au support l’extrait correspondant au moment où l’erreur est apparue.
WordPress est une marque de la WordPress Foundation. WooCommerce est une marque d’Automattic Inc. Claude est une marque d’Anthropic PBC. ChatGPT et OpenAI sont des marques d’OpenAI. TellMyShop n’est pas affilié à ces entreprises.