{"id":22443,"date":"2026-08-28T08:26:03","date_gmt":"2026-08-28T06:26:03","guid":{"rendered":"https:\/\/www.curiaweb.ch\/?post_type=docs&#038;p=22443"},"modified":"2026-08-28T08:26:04","modified_gmt":"2026-08-28T06:26:04","password":"","slug":"journaux-de-debogage-wordpress","status":"publish","type":"docs","link":"https:\/\/www.curiaweb.ch\/fr\/hilfe\/wordpress\/wordpress-debugging-fehlerprotokolle\/","title":{"rendered":"Activer le d\u00e9bogage WordPress et utiliser les journaux d'erreurs"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Lorsque WordPress affiche une erreur critique, une erreur HTTP 500, une page blanche ou un autre probl\u00e8me technique, le message d'erreur visible ne suffit souvent pas \u00e0 identifier la cause r\u00e9elle.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress et PHP peuvent par cons\u00e9quent consigner des informations d'erreur plus d\u00e9taill\u00e9es. Ces journaux indiquent par exemple quel type d'erreur s'est produit, \u00e0 quel moment elle est intervenue et quel fichier PHP \u00e9tait impliqu\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress dispose pour cela de son propre syst\u00e8me de d\u00e9bogage avec des param\u00e8tres tels que <code>WP_DEBUG<\/code>, <code>WP_DEBUG_LOG<\/code> et <code>WP_DEBUG_DISPLAY<\/code>. De plus, les journaux d'erreurs PHP c\u00f4t\u00e9 serveur peuvent contenir des informations importantes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cependant, le d\u00e9bogage ne consiste pas \u00e0 afficher publiquement autant de messages d'erreur que possible sur le site web. Sur un site web de production, les d\u00e9tails techniques doivent \u00eatre consign\u00e9s dans des journaux si possible, puis analys\u00e9s de mani\u00e8re cibl\u00e9e.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>En bref :<\/strong> N'activez le d\u00e9bogage que de mani\u00e8re cibl\u00e9e pour la recherche d'erreurs. Sur un site web en production, les messages d'erreur ne doivent normalement pas \u00eatre affich\u00e9s publiquement. Utilisez plut\u00f4t un journal des erreurs, reproduisez l'erreur, notez l'heure et examinez ensuite les entr\u00e9es de journal correspondantes.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Que signifie le d\u00e9bogage dans WordPress ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Le d\u00e9bogage d\u00e9signe la recherche syst\u00e9matique d'erreurs dans un logiciel ou un site web.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans le cas de WordPress, il s'agit par exemple de d\u00e9couvrir pourquoi une requ\u00eate sp\u00e9cifique \u00e9choue, pourquoi un plugin provoque une erreur ou pourquoi PHP interrompt le traitement d'une page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Plut\u00f4t que de simplement tester diff\u00e9rents param\u00e8tres, le d\u00e9bogage fournit des informations techniques sur le d\u00e9roulement r\u00e9el.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela permet souvent de transformer une supposition en un diagnostic concret.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Quand le d\u00e9bogage WordPress est-il utile ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Le d\u00e9bogage est particuli\u00e8rement utile lorsqu'un probl\u00e8me se produit de mani\u00e8re reproductible, mais que le message d'erreur visible ne fournit pas d'explication suffisante.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela concerne par exemple les erreurs WordPress critiques, les erreurs HTTP 500, les probl\u00e8mes suite \u00e0 une mise \u00e0 jour de plugin ou de th\u00e8me, les erreurs apr\u00e8s un changement de version PHP ou des fonctionnalit\u00e9s qui ne fonctionnent soudainement plus correctement.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">M\u00eame en cas de comportement inhabituel d'un plugin, un journal peut fournir des indices, m\u00eame si le site Web reste fondamentalement accessible.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le d\u00e9bogage n'est pas la m\u00eame chose que la r\u00e9paration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un journal d'erreurs ne r\u00e9sout pas automatiquement le probl\u00e8me.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le d\u00e9bogage aide d'abord \u00e0 identifier la cause.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si un journal, par exemple, montre qu'une erreur fatale PHP se produit dans un plugin sp\u00e9cifique, il faut ensuite v\u00e9rifier pourquoi cette erreur se produit et quelle solution y est adapt\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La force du d\u00e9bogage ne r\u00e9side donc pas dans une r\u00e9paration automatique, mais dans un diagnostic nettement plus pr\u00e9cis.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cr\u00e9er une sauvegarde avant d'apporter des modifications<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Avant de modifier des fichiers de configuration tels que <code>wp-config.php<\/code> tu le modifies, une sauvegarde r\u00e9cente doit \u00eatre pr\u00e9sente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une petite erreur de syntaxe dans un fichier de configuration PHP peut emp\u00eacher le chargement correct de WordPress.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pour les sites Web complexes ou critiques pour l'activit\u00e9, un environnement de staging est fondamentalement pr\u00e9f\u00e9rable pour des travaux de d\u00e9bogage approfondis.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le fichier wp-config.php<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les principaux param\u00e8tres de d\u00e9bogage de WordPress se trouvent g\u00e9n\u00e9ralement dans :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-config.php<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">d\u00e9fini.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ce fichier se trouve g\u00e9n\u00e9ralement dans le r\u00e9pertoire principal de l'installation WordPress ou un niveau au-dessus, si l'installation a \u00e9t\u00e9 configur\u00e9e en cons\u00e9quence.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Elle contient les param\u00e8tres centraux de l'installation WordPress et ne doit par cons\u00e9quent \u00eatre modifi\u00e9e qu'avec pr\u00e9caution.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">WP_DEBUG<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La constante WordPress principale pour le mode de d\u00e9bogage s'appelle :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>WP_DEBUG<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans une installation WordPress de production normale, le d\u00e9bogage est g\u00e9n\u00e9ralement d\u00e9sactiv\u00e9 :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', false );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il peut \u00eatre activ\u00e9 pour un diagnostic cibl\u00e9 :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', true );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Activ\u00e9 <code>WP_DEBUG<\/code> WordPress augmente le rapport d'erreurs PHP et g\u00e9n\u00e8re en outre des avis sp\u00e9cifiques \u00e0 WordPress, par exemple concernant des fonctions obsol\u00e8tes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">ne pas mettre true et false entre guillemets<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En ce qui concerne les constantes de d\u00e9bogage <code>vrai<\/code> et <code>faux<\/code> valeurs bool\u00e9ennes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Correct is, for example:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', false );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ne doit pas \u00eatre utilis\u00e9 :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', 'false' );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La deuxi\u00e8me variante contient une cha\u00eene de caract\u00e8res au lieu d'une valeur bool\u00e9enne et peut ainsi conduire \u00e0 un r\u00e9sultat inattendu.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Important :<\/strong> Pour les constantes WordPress, le type de donn\u00e9es doit \u00eatre correctement repris. <code>faux<\/code> et <code>'faux'<\/code> ne sont pas la m\u00eame chose en PHP.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">WP_DEBUG_LOG<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Avec :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>WP_DEBUG_LOG<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress peut \u00e9crire les messages de d\u00e9bogage dans un fichier.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une configuration typique est :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG_LOG', true );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si <code>WP_DEBUG_LOG<\/code> sur <code>vrai<\/code> et <code>WP_DEBUG<\/code> est activ\u00e9, WordPress utilise par d\u00e9faut :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/debug.log<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">comme fichier journal de d\u00e9bogage.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">WP_DEBUG_LOG n\u00e9cessite WP_DEBUG<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un lien important est souvent n\u00e9glig\u00e9 :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>WP_DEBUG_LOG<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">fonctionne au sein du syst\u00e8me de d\u00e9bogage de WordPress avec :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>WP_DEBUG<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si <code>WP_DEBUG<\/code> n'est pas activ\u00e9, le simple fait de d\u00e9finir <code>WP_DEBUG_LOG<\/code> le journal de d\u00e9bogage WordPress attendu.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Chemin personnalis\u00e9 pour WP_DEBUG_LOG<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress peut \u00eatre <code>WP_DEBUG_LOG<\/code> utiliser \u00e9galement un chemin de fichier valide.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela peut \u00eatre utile si le journal des erreurs ne doit pas \u00eatre stock\u00e9 directement dans le r\u00e9pertoire du site web accessible au public.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quels chemins sont utiles et descriptibles dans un environnement d'h\u00e9bergement concret d\u00e9pend de la configuration du serveur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">WP_DEBUG_DISPLAY<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La constante :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>WP_DEBUG_DISPLAY<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">d\u00e9termine si les messages de d\u00e9bogage doivent \u00eatre affich\u00e9s sur le site web.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pour un site web productif, la combinaison suivante est souvent plus judicieuse lors d'un diagnostic qu'un affichage public des erreurs :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>define( 'WP_DEBUG', true );\ndefine( 'WP_DEBUG_LOG', true );\ndefine( 'WP_DEBUG_DISPLAY', false );<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Cela permet \u00e0 WordPress de consigner les erreurs sans les afficher intentionnellement aux visiteurs sur le site web.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Attention :<\/strong> Les messages d'erreur d\u00e9taill\u00e9s peuvent contenir des chemins de fichiers, des configurations techniques et d'autres informations internes. Ils ne doivent pas \u00eatre affich\u00e9s publiquement de mani\u00e8re permanente sur un site web de production.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">prendre \u00e9galement en compte display_errors<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L'affichage r\u00e9el des erreurs PHP peut \u00e9galement \u00eatre influenc\u00e9 par la configuration de PHP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il peut donc \u00eatre utilis\u00e9 en compl\u00e9ment pour une configuration de diagnostic :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>@ini_set( 'display_errors', 0 );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une combinaison possible est donc la suivante :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>define( 'WP_DEBUG', true );\ndefine( 'WP_DEBUG_LOG', true );\ndefine( 'WP_DEBUG_DISPLAY', false );\n@ini_set( 'display_errors', 0 );<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">La possibilit\u00e9 de modifier les param\u00e8tres PHP pendant l'ex\u00e9cution d\u00e9pend toutefois de la configuration du serveur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">O\u00f9 faut-il placer le code de d\u00e9bogage dans wp-config.php ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les constantes de d\u00e9bogage doivent \u00eatre d\u00e9finies avant que WordPress ne soit enti\u00e8rement charg\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans un typique <code>wp-config.php<\/code> se trouvent-ils pour cette raison devant la ligne de conclusion connue ou avant <code>wp-settings.php<\/code> est int\u00e9gr\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si une d\u00e9finition telle que :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', false );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">existant, tu ne devrais pas en cr\u00e9er une seconde d\u00e9finition contradictoire ailleurs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Trouver le fichier debug.log<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Dans la configuration par d\u00e9faut, le fichier de d\u00e9bogage WordPress se trouve \u00e0 l'adresse suivante :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/debug.log<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Elle peut par exemple \u00eatre consult\u00e9e via le gestionnaire de fichiers de l'h\u00e9bergement ou un acc\u00e8s de transfert de fichiers appropri\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le fichier ne doit pas n\u00e9cessairement d\u00e9j\u00e0 exister. Il sera cr\u00e9\u00e9 ou \u00e9crit lorsque les messages correspondants pourront \u00eatre enregistr\u00e9s dans le journal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Si aucun fichier debug.log n'est cr\u00e9\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si, malgr\u00e9 l'activation du d\u00e9bogage, aucun fichier n'appara\u00eet, vous devez d'abord v\u00e9rifier si une erreur enregistrable a r\u00e9ellement \u00e9t\u00e9 g\u00e9n\u00e9r\u00e9e et si les constantes de d\u00e9bogage sont d\u00e9finies correctement.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">De plus, les droits des fichiers, le chemin des journaux configur\u00e9 et la configuration de l'h\u00e9bergement ou de PHP peuvent jouer un r\u00f4le.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un manquant <code>journal de d\u00e9bogage<\/code> ne prouve donc pas automatiquement que WordPress fonctionne sans erreur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Reproduire l'erreur de mani\u00e8re cibl\u00e9e<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L'une des m\u00e9thodes les plus efficaces pour l'analyse des journaux est la reproduction contr\u00f4l\u00e9e du probl\u00e8me.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si, par exemple, un clic sur \u201e Mettre \u00e0 jour \u201c sur une page sp\u00e9cifique provoque une erreur, ouvrez d'abord le journal ou notez son \u00e9tat actuel. Effectuez ensuite exactement cette m\u00eame action \u00e0 nouveau.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ensuite, tu examines les nouvelles entr\u00e9es.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela te permet de r\u00e9duire le risque de confondre une ancienne erreur qui n'est plus pertinente depuis longtemps avec le probl\u00e8me actuel.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Les horodatages sont cruciaux<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sur un site web exploit\u00e9 de longue date, un journal d'erreurs peut contenir des entr\u00e9es provenant de situations tr\u00e8s diverses.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une erreur fatale d'hier n'a pas n\u00e9cessairement de rapport avec le probl\u00e8me qui survient aujourd'hui.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Note par cons\u00e9quent le plus pr\u00e9cis\u00e9ment possible le moment o\u00f9 tu as reproduit l'erreur et compare-le avec les horodatages dans le journal.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Conseil pratique :<\/strong> Reproduisez une erreur de mani\u00e8re contr\u00f4l\u00e9e et notez l'heure. Cela permet de distinguer beaucoup plus rapidement les entr\u00e9es de journal pertinentes du bruit des anciens protocoles.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Comment lit-on une erreur PHP ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Une erreur PHP contient souvent plusieurs \u00e9l\u00e9ments utiles.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le type d'erreur, le message d'erreur, le chemin du fichier, le num\u00e9ro de ligne et l'horodatage sont particuli\u00e8rement pertinents.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un exemple simplifi\u00e9 pourrait ressembler \u00e0 ceci :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Erreur fatale PHP : Erreur non intercept\u00e9e ... dans \/wp-content\/plugins\/beispiel-plugin\/datei.php \u00e0 la ligne 123<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela vous permet d\u00e9j\u00e0 de savoir que PHP a interrompu l'ex\u00e9cution en raison d'une erreur fatale et dans quelle zone de code l'erreur est apparue.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Erreur fatale PHP<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Erreur fatale PHP<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">est une erreur fatale qui emp\u00eache PHP de poursuivre l'ex\u00e9cution normale.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">De telles erreurs peuvent par exemple \u00eatre caus\u00e9es par du code incompatible, des fonctions ou des classes manquantes, des probl\u00e8mes de m\u00e9moire et d'autres bugs graves.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une erreur fatale est donc particuli\u00e8rement pertinente en cas d'erreur HTTP 500 ou de page blanche.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Erreur non intercept\u00e9e et TypeError<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Des messages tels que :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Erreur non intercept\u00e9e<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ou<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>TypeError<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">signalent des erreurs lors de l'ex\u00e9cution de PHP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un <code>TypeError<\/code> peut survenir, par exemple, lorsqu'un code transmet une valeur d'un type inappropri\u00e9 \u00e0 une fonction.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ce type d'erreur se produit souvent en cas d'incompatibilit\u00e9s ou de code d\u00e9fectueux de plugin, de th\u00e8me ou de code personnalis\u00e9.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Appel \u00e0 une fonction non d\u00e9finie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un message tel que :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Appel \u00e0 une fonction non d\u00e9finie<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">signifie que PHP a tent\u00e9 d'appeler une fonction qui n'est pas disponible dans ce contexte d'ex\u00e9cution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les causes possibles sont un code incompatible, une d\u00e9pendance manquante ou une extension PHP non disponible.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le chemin du fichier et le nom de la fonction fournissent des indications importantes pour la suite du diagnostic.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Classe introuvable<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un message tel que :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Classe ... introuvable<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">peut indiquer que le code de programme attendu n'a pas \u00e9t\u00e9 charg\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela peut \u00eatre caus\u00e9 par exemple par des fichiers manquants, des d\u00e9pendances de plugins, des processus de chargement automatique d\u00e9fectueux ou des versions incompatibles.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Impossible de redeclarer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Chez :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Impossible de redeclarer<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">par exemple, on a essay\u00e9 de redeclarer une fonction d\u00e9j\u00e0 existante.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela peut se produire en cas de code doublement charg\u00e9 ou qui se chevauche, et c'est donc \u00e9galement int\u00e9ressant en cas de conflits de plugins ou de th\u00e8mes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Taille de m\u00e9moire autoris\u00e9e \u00e9puis\u00e9e<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Le message :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Taille de m\u00e9moire autoris\u00e9e ... \u00e9puis\u00e9e<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">indique que PHP a atteint la limite de m\u00e9moire autoris\u00e9e lors de son ex\u00e9cution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela ne signifie pas automatiquement qu'uniquement une limite plus \u00e9lev\u00e9e est n\u00e9cessaire. Un plugin ou un processus peut \u00e9galement consommer une quantit\u00e9 inhabituelle de m\u00e9moire.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nous traitons le diagnostic exact sous <a href=\"\/fr\/aide\/wordpress\/limite-de-memoire-php-wordpress\/\">Limite de m\u00e9moire PHP dans WordPress : identifier et corriger l'erreur<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Erreur d'analyse syntaxique et erreur de syntaxe<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Une erreur de syntaxe se produit lorsque le code PHP n'est pas correctement structur\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela peut se produire, par exemple, apr\u00e8s une modification manuelle sur :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>fonctions.php<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ou<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-config.php<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">arriver.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une simple parenth\u00e8se manquante, un caract\u00e8re erron\u00e9 ou un point-virgule d\u00e9fectueux peuvent amener PHP \u00e0 ne pas interpr\u00e9ter correctement le fichier.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Un avertissement n'est pas la m\u00eame chose qu'une erreur fatale<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Avertissement PHP<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">est g\u00e9n\u00e9ralement moins grave qu'une erreur fatale.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PHP peut poursuivre son ex\u00e9cution selon la situation malgr\u00e9 un avertissement.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les avertissements doivent quand m\u00eame \u00eatre examin\u00e9s, en particulier s'ils se produisent fr\u00e9quemment ou s'ils sont li\u00e9s \u00e0 un dysfonctionnement concret.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cependant, chaque avertissement n'explique pas automatiquement l'erreur pour laquelle vous avez ouvert le journal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Bien replacer la notice dans son contexte<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les notices signalent souvent un code probl\u00e9matique ou malpropre sans interrompre imm\u00e9diatement l'ex\u00e9cution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une fois activ\u00e9 <code>WP_DEBUG<\/code> plusieurs messages peuvent donc appara\u00eetre, m\u00eame si le site Web fonctionne au premier abord.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le volume des messages ne doit pas inciter \u00e0 traiter chaque entr\u00e9e avec le m\u00eame niveau de criticit\u00e9.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Messages obsol\u00e8tes<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress et PHP peuvent g\u00e9n\u00e9rer des avis concernant des fonctionnalit\u00e9s ou des pratiques obsol\u00e8tes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">De tels messages contiennent souvent des termes tels que :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Obsol\u00e8te<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une d\u00e9pr\u00e9ciation ne signifie pas n\u00e9cessairement que la fonction ne fonctionne d\u00e9j\u00e0 plus. Elle indique que le code concern\u00e9 est obsol\u00e8te et peut devenir probl\u00e9matique dans les versions futures.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans le cas des plugins ou des th\u00e8mes, de nombreux nouveaux messages de d\u00e9pr\u00e9ciation apr\u00e8s un changement de version indiquent donc qu'il convient de v\u00e9rifier l'actualit\u00e9 et la compatibilit\u00e9 de l'extension concern\u00e9e.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le nombre de signalements le plus \u00e9lev\u00e9 ne constitue pas automatiquement le probl\u00e8me le plus important<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un plugin peut g\u00e9n\u00e9rer des centaines d'avis, tandis qu'une seule erreur fatale d'un autre composant fait r\u00e9ellement planter le site Web.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le diagnostic devrait donc \u00eatre effectu\u00e9 en fonction de la pertinence et non pas simplement selon le message qui appara\u00eet le plus souvent dans le journal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lire correctement les chemins de fichiers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un chemin de fichier peut donner un indice important sur le composant concern\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un chemin au sein de :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/plugins\/<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">m\u00e8ne \u00e0 un plugin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un chemin au sein de :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/themes\/<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">conduit \u00e0 un th\u00e8me ou un th\u00e8me enfant.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un chemin au sein de :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-admin\/<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ou<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-includes\/<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">m\u00e8ne au c\u0153ur de WordPress.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Un chemin de c\u0153ur WordPress ne prouve pas un bug du c\u0153ur<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si un message d'erreur indique un fichier sous <code>wp-includes<\/code> mentionne, cela ne signifie pas automatiquement que WordPress lui-m\u00eame comporte des erreurs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Par exemple, un plugin peut appeler une fonction du c\u0153ur de WordPress avec des donn\u00e9es non valides. L'erreur peut alors appara\u00eetre au sein de la fonction du c\u0153ur, bien que la cause r\u00e9elle se situe en dehors du c\u0153ur de WordPress.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Par cons\u00e9quent, l'ensemble du contexte de l'erreur est plus important que le seul dernier chemin de fichier.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comprendre la trace de la pile<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En cas d'erreurs graves, une trace de la pile (stack trace) peut \u00eatre enregistr\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il montre, de mani\u00e8re simplifi\u00e9e, quelles fonctions ou m\u00e9thodes ont \u00e9t\u00e9 appel\u00e9es avant que l'erreur ne se produise.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela permet de comprendre comment PHP est parvenu \u00e0 l'endroit o\u00f9 l'ex\u00e9cution a \u00e9t\u00e9 interrompue.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pour les d\u00e9veloppeurs et le support technique, une trace de pile peut donc \u00eatre beaucoup plus \u00e9loquente que la simple derni\u00e8re ligne d'erreur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Analyser les conflits de plugins ou de th\u00e8mes \u00e0 l'aide des journaux<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si un journal renvoie de mani\u00e8re r\u00e9p\u00e9t\u00e9e \u00e0 un plugin ou un th\u00e8me particulier, ce composant constitue un point de d\u00e9part logique pour un diagnostic approfondi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Elle devrait n\u00e9anmoins faire l'objet de tests contr\u00f4l\u00e9s et ne pas \u00eatre simplement supprim\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vous trouverez notre d\u00e9marche sous <a href=\"\/fr\/aide\/wordpress\/conflits-entre-plugins-et-themes-wordpress\/\">D\u00e9tecter et r\u00e9soudre les conflits de plugins ou de th\u00e8mes dans WordPress<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Erreur apr\u00e8s un changement de PHP<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si, imm\u00e9diatement apr\u00e8s le changement de version de PHP, de nouvelles erreurs fatales, des erreurs de type ou des messages d'obsolescence apparaissent, la compatibilit\u00e9 des composants concern\u00e9s doit \u00eatre v\u00e9rifi\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le chemin d'acc\u00e8s au fichier dans le journal des erreurs peut aider \u00e0 identifier une extension, un th\u00e8me ou un extrait de code personnalis\u00e9 obsol\u00e8te.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nous expliquons cela plus en d\u00e9tail sous <a href=\"\/fr\/aide\/wordpress\/changer-la-version-php-de-wordpress\/\">Modifier la version PHP pour WordPress et v\u00e9rifier la compatibilit\u00e9<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le journal de d\u00e9bogage WordPress et le journal d'erreurs PHP ne sont pas la m\u00eame chose<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cette diff\u00e9rence est importante.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le fichier :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/debug.log<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">est g\u00e9n\u00e9r\u00e9 par la journalisation de d\u00e9bogage WordPress, si elle a \u00e9t\u00e9 activ\u00e9e en cons\u00e9quence.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L'environnement d'h\u00e9bergement ou PHP peut \u00e9galement conserver ses propres journaux d'erreurs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ces journaux c\u00f4t\u00e9 serveur peuvent contenir des erreurs qui n'apparaissent pas, ou pas compl\u00e8tement, dans le journal de d\u00e9bogage de WordPress.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Quel journal doit-il \u00eatre v\u00e9rifi\u00e9 en premier ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si un journal des erreurs PHP ou du serveur est disponible via l'h\u00e9bergement, il constitue souvent un tr\u00e8s bon point de d\u00e9part en cas de probl\u00e8mes PHP graves.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il ne n\u00e9cessite pas d'affichage public permanent des erreurs et peut d\u00e9j\u00e0 contenir l'erreur fatale d\u00e9cisive.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">S'il n'y a pas suffisamment d'informations, un d\u00e9bogage WordPress cibl\u00e9 peut fournir des d\u00e9tails suppl\u00e9mentaires.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Diagnostiquer une erreur HTTP 500 \u00e0 l'aide des journaux<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Lors d'une erreur HTTP 500, le navigateur affiche souvent seulement un message d'erreur de serveur g\u00e9n\u00e9ral.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le journal des erreurs peut en revanche contenir l'erreur fatale PHP sous-jacente, une erreur de m\u00e9moire ou d'autres probl\u00e8mes c\u00f4t\u00e9 serveur.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tu trouveras la proc\u00e9dure compl\u00e8te sur <a href=\"\/fr\/aide\/wordpress\/resoudre-lerreur-500-wordpress\/\">Corriger l'erreur 500 dans WordPress<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Enqu\u00eater sur une erreur critique de WordPress<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress peut afficher un message d'erreur critique en cas de certaines erreurs PHP fatales et, le cas \u00e9ch\u00e9ant, proposer un mode de r\u00e9cup\u00e9ration.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Auch hier k\u00f6nnen Logs zus\u00e4tzliche Informationen dar\u00fcber liefern, welche Komponente den Fehler ausgel\u00f6st hat.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die entsprechenden Wiederherstellungsschritte erkl\u00e4ren wir unter <a href=\"\/fr\/aide\/wordpress\/wordpress-kritischer-fehler-weisse-seite\/\">WordPress affiche une page blanche ou une erreur critique : que faire ?<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">AJAX-Fehler protokollieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ein Vorteil von <code>WP_DEBUG_LOG<\/code> besteht darin, dass Fehler protokolliert werden k\u00f6nnen, die nicht auf einer normalen sichtbaren Seite erscheinen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das ist beispielsweise bei AJAX-Anfragen hilfreich.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ein WordPress-Editor, Formular oder Plugin eine AJAX-Anfrage verwendet und diese serverseitig fehlschl\u00e4gt, kann ein Log Hinweise auf den PHP-Fehler liefern.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">WP-Cron und Hintergrundprozesse<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Auch Fehler w\u00e4hrend geplanter WordPress-Aufgaben k\u00f6nnen schwierig zu erkennen sein, weil kein Besucher unmittelbar eine entsprechende Fehlermeldung sieht.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Logging ist deshalb auch bei WP-Cron und anderen Hintergrundprozessen hilfreich.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ein geplanter Prozess immer wieder fehlschl\u00e4gt, sollten Zeitstempel und wiederkehrende Fehlermuster untersucht werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">REST-API-Fehler<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Moderne WordPress-Funktionen und Plugins verwenden h\u00e4ufig die REST API.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein serverseitiger PHP-Fehler w\u00e4hrend einer REST-Anfrage erscheint m\u00f6glicherweise nicht als normale Fehlermeldung innerhalb einer sichtbaren WordPress-Seite.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Auch hier k\u00f6nnen Logs wesentlich mehr Informationen liefern als die Benutzeroberfl\u00e4che.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">JavaScript-Fehler stehen nicht zwingend im PHP-Log<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress-Debugging und PHP Error Logs konzentrieren sich auf serverseitige Vorg\u00e4nge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn beispielsweise ein Men\u00fc, Slider oder Button im Browser nicht reagiert, kann die Ursache stattdessen in JavaScript liegen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Solche Fehler werden h\u00e4ufig \u00fcber die Entwicklerwerkzeuge des Browsers untersucht.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein leeres PHP-Error-Log beweist deshalb nicht, dass auf einer Website keinerlei technischer Fehler existiert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">CSS-Probleme stehen normalerweise ebenfalls nicht im PHP-Log<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ein falsch dargestelltes Element kann durch CSS verursacht werden, obwohl PHP vollst\u00e4ndig fehlerfrei arbeitet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn eine Website technisch funktioniert, aber beispielsweise Abst\u00e4nde, Farben oder Layout falsch dargestellt werden, sind die Browser-Entwicklerwerkzeuge h\u00e4ufig das geeignetere Diagnosewerkzeug.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Datenbankfehler<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Auch Datenbankprobleme k\u00f6nnen technische Fehler verursachen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bei aktiviertem WordPress-Debugging k\u00f6nnen zus\u00e4tzliche Informationen zu Datenbankfehlern sichtbar beziehungsweise protokolliert werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein Fehler in einer SQL-Abfrage sollte allerdings nicht automatisch durch manuelle \u00c4nderungen an der Datenbank \u201erepariert\u201c werden. Zun\u00e4chst sollte festgestellt werden, welche Komponente die problematische Abfrage erzeugt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debugging kann die Website selbst beeinflussen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Umfangreiches Logging erzeugt zus\u00e4tzliche Dateioperationen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn eine Website pro Anfrage sehr viele Warnings oder Notices produziert, kann eine aktivierte Protokollierung eine gro\u00dfe Menge an Daten schreiben.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Debugging sollte deshalb als Diagnosewerkzeug und nicht als dauerhaft eingeschalteter Normalzustand einer produktiven Website betrachtet werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Eine debug.log kann sehr gro\u00df werden<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn derselbe Fehler bei jedem Seitenaufruf mehrfach protokolliert wird, kann:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/debug.log<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">innerhalb kurzer Zeit stark anwachsen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das beansprucht Speicherplatz und erschwert zus\u00e4tzlich die Auswertung.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nach einer Diagnose solltest du deshalb pr\u00fcfen, ob das Debugging wieder deaktiviert wurde und ob eine nicht mehr ben\u00f6tigte Logdatei sicher entfernt werden kann.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Logs k\u00f6nnen sensible Informationen enthalten<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Fehlerprotokolle k\u00f6nnen interne Dateipfade, technische Konfigurationen, Abfrageinformationen und je nach fehlerhafter Anwendung weitere Daten enthalten.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Behandle Logs deshalb nicht wie \u00f6ffentlich zug\u00e4ngliche Textdateien.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ein Log an Support oder einen Entwickler weitergegeben wird, sollte nur der f\u00fcr die Diagnose erforderliche Ausschnitt \u00fcbermittelt und vorher gepr\u00fcft werden, ob darin sensible Daten enthalten sind.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Attention :<\/strong> Ver\u00f6ffentliche vollst\u00e4ndige Debug-Logs nicht ungepr\u00fcft in \u00f6ffentlichen Foren, Tickets oder sozialen Netzwerken. Kontrolliere zuerst, welche Informationen darin enthalten sind.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">debug.log im \u00f6ffentlich erreichbaren Verzeichnis<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der Standardpfad:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>wp-content\/debug.log<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">liegt innerhalb der WordPress-Verzeichnisstruktur.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Abh\u00e4ngig von der Webserver-Konfiguration kann eine dort abgelegte Datei potenziell \u00fcber HTTP erreichbar sein. WordPress weist deshalb selbst darauf hin, dass \u00f6ffentlich erreichbare Fehlerprotokolle ein Sicherheitsrisiko darstellen k\u00f6nnen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Auf produktiven Umgebungen sollte Logging daher kontrolliert eingesetzt und die Logdatei nach Abschluss der Diagnose nicht unn\u00f6tig bestehen gelassen werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debugging nach der Fehlersuche wieder deaktivieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nach Abschluss der Diagnose sollte eine produktive Website wieder in eine normale Konfiguration versetzt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eine einfache WordPress-Konfiguration kann beispielsweise wieder:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>define( 'WP_DEBUG', false );<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">utiliser.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn zus\u00e4tzliche Debug-Konstanten nur f\u00fcr die Diagnose erg\u00e4nzt wurden, sollte gepr\u00fcft werden, ob sie weiterhin ben\u00f6tigt werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debug-Log nach der Diagnose behandeln<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn die Logdatei nicht mehr ben\u00f6tigt wird, kann sie nach Sicherung eventuell relevanter Informationen entfernt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wird Debug-Logging sp\u00e4ter erneut aktiviert, kann WordPress beziehungsweise PHP wieder neue Meldungen protokollieren.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das Entfernen einer alten Logdatei behebt allerdings keine Ursache. Es dient lediglich dazu, nicht mehr ben\u00f6tigte Diagnoseinformationen zu entfernen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Alte Fehler nicht mit aktuellen Problemen verwechseln<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Eine vorhandene <code>journal de d\u00e9bogage<\/code> kann Meldungen enthalten, die Wochen oder Monate alt sind.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn eine Website heute einen Fehler zeigt, sollte deshalb nicht automatisch der auff\u00e4lligste alte Fatal Error als Ursache angenommen werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Der Vergleich mit dem aktuellen Zeitpunkt ist entscheidend.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wiederkehrende Fehlermuster erkennen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn derselbe Fehler immer wieder zu bestimmten Zeiten auftritt, kann das auf einen geplanten Prozess hinweisen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Beispielsweise k\u00f6nnen Cronjobs, Backups, Imports oder Sicherheits-Scans regelm\u00e4\u00dfig bestimmte Funktionen ausf\u00fchren.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein zeitliches Muster im Log kann deshalb einen wichtigen Hinweis liefern, auch wenn die Website zwischen diesen Ereignissen normal funktioniert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Logs vor und nach einer \u00c4nderung vergleichen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bei einer kontrollierten Diagnose solltest du m\u00f6glichst nur eine relevante Variable gleichzeitig ver\u00e4ndern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn beispielsweise ein Plugin deaktiviert wird, reproduziere anschlie\u00dfend den Fehler erneut und vergleiche die neuen Logeintr\u00e4ge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Verschwindet der Fehler, ist das eine wesentlich st\u00e4rkere Information als eine zuf\u00e4llige \u00c4nderung von f\u00fcnf verschiedenen Einstellungen gleichzeitig.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debugging bei einer langsamen WordPress-Website<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ein Error Log ist kein vollst\u00e4ndiges Performance-Analysewerkzeug.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Es kann jedoch Hinweise auf Prozesse liefern, die st\u00e4ndig Fehler oder Warnungen erzeugen und dadurch zus\u00e4tzliche Last verursachen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr eine vollst\u00e4ndige Performance-Diagnose m\u00fcssen zus\u00e4tzlich PHP-Verarbeitung, Datenbank, Plugins, Frontend-Ressourcen und Hosting-Ressourcen betrachtet werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nous expliquons la proc\u00e9dure sous <a href=\"\/fr\/aide\/wordpress\/ameliorer-le-temps-de-chargement-lent-de-wordpress\/\">WordPress est lent : trouver les causes et am\u00e9liorer le temps de chargement<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Query Monitor und \u00e4hnliche Diagnosewerkzeuge<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr weitergehende Analysen existieren WordPress-Plugins, die zus\u00e4tzliche technische Informationen darstellen k\u00f6nnen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein bekanntes Werkzeug ist beispielsweise Query Monitor. Damit k\u00f6nnen unter anderem Datenbankabfragen, PHP-Fehler, Hooks, HTTP-API-Aufrufe und weitere Informationen w\u00e4hrend einer Anfrage untersucht werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Solche Werkzeuge richten sich vor allem an Entwickler und technisch erfahrene Benutzer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sie sollten nicht dauerhaft nur deshalb installiert und aktiviert bleiben, weil eine Website irgendwann einmal einen Fehler hatte.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SCRIPT_DEBUG ist nicht dasselbe wie WP_DEBUG<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress kennt zus\u00e4tzlich:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>SCRIPT_DEBUG<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Diese Konstante ist nicht mit <code>WP_DEBUG<\/code> gleichzusetzen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sie wird insbesondere bei der Entwicklung und Diagnose von WordPress-Core-JavaScript- beziehungsweise CSS-Dateien verwendet und ist f\u00fcr eine normale PHP-Fehlersuche in der Regel nicht erforderlich.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SAVEQUERIES nur gezielt verwenden<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr Datenbankdiagnosen existiert au\u00dferdem:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>SAVEQUERIES<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Damit k\u00f6nnen Informationen zu Datenbankabfragen gesammelt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Diese Funktion erzeugt zus\u00e4tzlichen Speicher- und Performance-Aufwand und sollte deshalb nur gezielt zur Diagnose eingesetzt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr normale WordPress-Benutzer ist sie bei einer \u00fcblichen Fehlersuche normalerweise nicht der erste Schritt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debugging auf Staging und Produktion unterscheiden<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Auf einer Entwicklungs- oder Staging-Umgebung k\u00f6nnen ausf\u00fchrliche Diagnoseinformationen sinnvoll sein, weil dort keine normalen Besucher betroffen sind.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Auf einer produktiven Website muss dagegen st\u00e4rker darauf geachtet werden, dass technische Informationen nicht \u00f6ffentlich ausgegeben werden und das Logging nur so lange wie n\u00f6tig aktiv bleibt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die gleiche Debug-Konfiguration ist deshalb nicht automatisch f\u00fcr jede Umgebung geeignet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Was du beim Debugging besser nicht tun solltest<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Aktiviere nicht einfach die \u00f6ffentliche Ausgabe s\u00e4mtlicher PHP-Fehler auf einer produktiven Website und lasse diese Einstellung anschlie\u00dfend dauerhaft bestehen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c4ndere au\u00dferdem nicht gleichzeitig mehrere Plugins, das Theme, PHP und die WordPress-Konfiguration. Dadurch wird schwer nachvollziehbar, welche \u00c4nderung den Fehler tats\u00e4chlich beeinflusst hat.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u00f6sche nicht sofort eine Komponente nur deshalb, weil ihr Dateipfad in einem Log erscheint. Pr\u00fcfe zun\u00e4chst den Zusammenhang und reproduziere den Fehler kontrolliert.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Und sende vollst\u00e4ndige Logdateien nicht ungepr\u00fcft an beliebige Dritte.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>R\u00e8gle de base :<\/strong> Fehler reproduzieren, Zeitpunkt notieren, relevante Logeintr\u00e4ge identifizieren und erst danach eine gezielte \u00c4nderung vornehmen. Anschlie\u00dfend denselben Fehler erneut testen. So wird aus Ausprobieren eine nachvollziehbare technische Diagnose.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Quelles informations aident le support de CURIAWEB ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn du CURIAWEB wegen eines WordPress-Fehlers kontaktierst, beschreibe zun\u00e4chst, welche Aktion den Fehler ausl\u00f6st und wann er zuletzt aufgetreten ist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein relevanter Logausschnitt mit Zeitstempel ist wesentlich hilfreicher als eine vollst\u00e4ndige Datei mit tausenden \u00e4lteren Meldungen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ein Fatal Error vorhanden ist, sollte die vollst\u00e4ndige zugeh\u00f6rige Fehlermeldung einschlie\u00dflich Dateipfad und gegebenenfalls Stack Trace \u00fcbermittelt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Teile au\u00dferdem mit, ob unmittelbar zuvor WordPress, ein Plugin, das Theme, PHP oder individueller Code ver\u00e4ndert wurde.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Entferne beziehungsweise schw\u00e4rze sensible Informationen, falls sie f\u00fcr die Diagnose nicht ben\u00f6tigt werden. Passw\u00f6rter solltest du niemals unaufgefordert in einem Fehlerprotokoll oder Support-Ticket mitsenden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">R\u00e9sum\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress Debugging und Fehlerprotokolle geh\u00f6ren zu den wichtigsten Werkzeugen f\u00fcr eine systematische technische Fehlersuche. Statt lediglich aufgrund einer sichtbaren Fehlermeldung zu raten, k\u00f6nnen Logs zeigen, welcher Fehler tats\u00e4chlich aufgetreten ist, wann er entstand und welcher Codebereich beteiligt war.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die zentrale Einstellung <code>WP_DEBUG<\/code> aktiviert den WordPress-Debug-Modus. Mit <code>WP_DEBUG_LOG<\/code> k\u00f6nnen Meldungen protokolliert werden, w\u00e4hrend <code>WP_DEBUG_DISPLAY<\/code> steuert, ob diese Informationen auf der Website angezeigt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Auf einer produktiven Website ist es normalerweise sinnvoller, Fehler kontrolliert zu protokollieren, statt technische Details \u00f6ffentlich auszugeben. Die standardm\u00e4\u00dfige WordPress-Debugdatei <code>wp-content\/debug.log<\/code> sollte au\u00dferdem als potenziell sensible Datei behandelt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bei der Auswertung sind Fehlertyp, Zeitstempel, Dateipfad und gegebenenfalls Stack Trace besonders wichtig. Ein Dateipfad liefert einen Hinweis, beweist aber nicht immer allein, welche Komponente die eigentliche Ursache ist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nach Abschluss der Diagnose sollte Debugging auf einer produktiven Website wieder passend deaktiviert und eine nicht mehr ben\u00f6tigte Logdatei entfernt beziehungsweise sicher behandelt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die wichtigste Methode bleibt dabei einfach: <strong>Fehler reproduzieren, Log pr\u00fcfen, Ursache eingrenzen, eine gezielte \u00c4nderung durchf\u00fchren und anschlie\u00dfend erneut testen.<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>Wenn WordPress einen kritischen Fehler, HTTP 500, eine weisse Seite oder ein anderes technisches Problem zeigt, reicht die sichtbare Fehlermeldung h\u00e4ufig nicht aus, um die tats\u00e4chliche Ursache zu erkennen. WordPress und PHP k\u00f6nnen deshalb detailliertere Fehlerinformationen protokollieren. Diese Logs zeigen beispielsweise, welcher Fehlertyp aufgetreten ist, zu welchem Zeitpunkt der Fehler entstand und welche PHP-Datei beteiligt [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_joinchat":[],"footnotes":""},"doc_category":[80],"doc_tag":[],"class_list":["post-22443","docs","type-docs","status-publish","hentry","doc_category-wordpress"],"year_month":"2026-09","word_count":3951,"total_views":"6","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"name":"Silvio Mazenauer","author_nicename":"admin-curia","author_url":"https:\/\/www.curiaweb.ch\/fr\/author\/admin-curia\/"},"doc_category_info":[{"term_name":"WordPress","term_url":"https:\/\/www.curiaweb.ch\/fr\/hilfe-kategorie\/wordpress\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/docs\/22443","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/comments?post=22443"}],"version-history":[{"count":1,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/docs\/22443\/revisions"}],"predecessor-version":[{"id":22445,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/docs\/22443\/revisions\/22445"}],"wp:attachment":[{"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/media?parent=22443"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/doc_category?post=22443"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.curiaweb.ch\/fr\/wp-json\/wp\/v2\/doc_tag?post=22443"}],"curies":[{"name":"Bien jou\u00e9","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}