Debugging ist eine wesentliche Fähigkeit für jeden Entwickler. Dieses Tutorial zeigt Ihnen 11 mächtige Möglichkeiten, WordPress- und PHP -Fehler zu debuggen.
Das erste Element in der Liste ist der berühmte WP_DEBUG, dann werden wir in einige fortgeschrittenere Methoden eingehen.
Listen wir zunächst die Arten gemeinsamer PHP -Fehler auf:
a - HINWEIS: Dies ist die am wenigsten wichtige Fehlermeldung, die Sie mit PHP sehen werden. Es bedeutet nicht unbedingt, dass etwas nicht stimmt, aber es wird eine mögliche Verbesserung vorgeschlagen.
Beispiel: Nullelement übergeben an eine Funktion, die eine Zeichenfolge erwartet.
B - Warnung: Es ist ein schwerwiegenderer Fehler, verursacht jedoch keine Drehbuch -Beendigung.
Beispiel: Geben include () eine Datei, die nicht existiert.
c - Fataler Fehler: Dies ist ein gefährlicher Indikator dafür, dass etwas wirklich schief geht, und das Skript endet.
Beispiel: Aufrufen einer nicht existierenden Funktion.
WordPress hat eine globale Konstante, um das erforderliche Debugging -Niveau anzugeben: wp_debug. Zusammen mit dieser Konstante sind zwei weitere wichtige wichtige: wp_deubg_display und wp_debug_log.
wp_debug wird verwendet, um den Debugging -Modus ein- oder auszuschalten. WP_DEUBG_DISPLY zeigt sie an oder versteckt sie. Schließlich speichert wp_debug_log Ihre Fehlermeldungen in WP-Content/debug.log.
Die drei globalen Konstanten können in wp-config.php auf true oder false festgelegt werden:
define("WP_DEBUG", true); define("WP_DEBUG_DISPLAY", true); define("WP_DEBUG_LOG", true);
Ein weiteres WordPress-integriertes Tool zum Debuggen ist is_wp_error ();. Es handelt sich um eine Methode, um zu überprüfen, ob ein bestimmtes Ergebnis vom Typ WP_error ist. WP_Error ist tatsächlich das zurückgegebene Objekt, das Sie empfangen sollten, wenn eine WordPress -Methode fehlschlägt.
Beispiel:
$post = array( 'post_title' => 'Test post', 'post_content' => 'This is my post.', 'post_status' => 'publish', 'post_author' => 1 ); $result = wp_insert_post( $my_post ); if(is_wp_error($result)){ echo $return->get_error_message(); }
Der obige Code wird versucht, einen neuen Beitrag mit wp_insert_post () hinzuzufügen. Wenn diese Methode fehlschlägt, wird das WP_ERROR -Objekt zurückgegeben. Sie können dann die Fehlermeldung fangen und abrufen.
Ein weiteres nützliches Tool zum Debuggen von WordPress -Fehlern ist die Debug -Leiste. Es ist ein sehr praktisches Tool, um nützliche Informationen zu jeder Seite in Ihrer Website zu erhalten.
Nach dem Installieren finden Sie eine neue Debug -Taste. Wenn Sie darauf klicken, eine Analyse der Abfragen, Vorlagen, PHP -Installation und vielen anderen nützlichen Informationen.
Es ist von größter Bedeutung, die Live -Website von Ihren Tests und Entwicklung zu trennen. Normalerweise habe ich zwei Installationen von WordPress auf meinen Websites. Dies ist wichtig, da Sie nicht möchten, dass Ihre Skripte beim Einschalten der Fehlerberichterstattung enden.
Einfach Haken anzeigen ist ein schönes Plugin, um jeden Haken zu zeigen, der auf jeder Seite ausgeführt wird. Wenn Sie auf eine Situation stoßen, in der nicht alle Fehlerberichterstattungsideen funktionieren und Sie dann die Zeit haben, alle laufenden Haken herauszuholen.
Dieses Plugin zeigt Ihnen, welche Aktion oder Filterhaken auf einer beliebigen Seite ausgeführt werden. Sie können dann mit der Analyse und Debugie für jeden Hakencode beginnen. Sie können auch die angeschlossenen Methoden an jedem Haken sehen. Und finden Sie sogar die Priorität von jedem.
Wenn Sie die WPDB -Klasse für den Umgang mit Ihrer Datenbank verwenden, benötigen Sie immer Fehlerberichterstattung. Unabhängig davon, ob Ihre Abfragen korrekt ausgeführt werden oder Fehlermeldungen für das Debuggen angezeigt werden.
Beispiel:
define("WP_DEBUG", true); define("WP_DEBUG_DISPLAY", true); define("WP_DEBUG_LOG", true);
An einigen Stellen können weder WordPress noch PHP einige Codierungsfehler aufnehmen. Wenn Ihr Skript beispielsweise die maximal zulässige Laufzeit überschritten hat, erhalten Sie keine PHP -Fehlermeldung. Vielmehr wird Apache (oder Ihr Server installiertes System) so etwas wie "Interner Serverfehler" angezeigt.
Dies ist die Zeit, in der Sie zu Ihrem Fehlerprotokoll wechseln und sehen sollten, was ist, wenn Ihr PHP -Code oder ein bestimmter Teil Ihrer WordPress -Installation etwas falsch gemacht hat.
Sie können Ihr Web -Hosting konsultieren, das angegeben ist, wo die Protokollierung gespeichert ist. Normalerweise ist es etwas unter Protokollordner.
PHP hat eine eigene Fehlerebene, um die Probleme zu speichern, die über WordPress hinaus gelöst werden. Dies ist äußerst nützlich, insbesondere wenn etwas außerhalb von WordPress läuft und ein Problem verursacht.
Sie können zunächst Ihre Php.ini -Datei konfigurieren, um die Fehlerberichterstattung einzuschalten, und dann auszuwählen, wo solche Nachrichten gespeichert werden sollen.
$post = array( 'post_title' => 'Test post', 'post_content' => 'This is my post.', 'post_status' => 'publish', 'post_author' => 1 ); $result = wp_insert_post( $my_post ); if(is_wp_error($result)){ echo $return->get_error_message(); }
Einstellen der beiden oben genannten Zeilen aktivieren die Fehlerberichterstattung und setzen Sie die zu gespeicherten Fehler auf dem angegebenen Pfad.
Außerdem können Sie Phpinfo () ausführen; und überprüfen Sie die Option "ERROR_LOG".
Wenn Ihr Hosting -Anbieter den Zugriff auf PHP.ini -Datei einschränkt oder auf Fehlerprotokolle nicht zugreifen können, können die Dinge etwas schwieriger sein. Es gibt jedoch viele Tools, um eine Situation zu überwinden, wenn Sie nur eine leere Seite ohne Fehlermeldung erhalten. Ein schnelles Tool ist PHP -Code -Checker.
PHP -Code -Checker ist ein Syntaxfehler -Check -Tool. Es ist sehr nützlich, wenn Sie einen Semikolon oder eine lockige Klammer verpasst haben und nicht finden können, wo Sie es vermisst haben.
Wenn PHP -Code -Checker keinen Syntaxfehler gefunden hat, benötigen Sie ein leistungsstärkeres Tool. Eine leistungsstarke IDE wie PhpStorm wird die Antwort auf fortgeschrittenes Debuggen sein und Ihren Code in Teile zerlegen.
In einer Situation wie, wenn Sie eine Zeichenfolge in einer Variablen speichern und versuchen, sie zu drucken, aber nichts passiert. Mit einer IDE finden Sie heraus, dass Sie etwas falsch machen, wie diese Variable später in Ihrem Code überschreiben. Aus diesem Grund wird dringend empfohlen, sich auf eine leistungsstarke IDE wie PhpStorm, Eclipse oder ein Tool zu verlassen, das Sie bevorzugen.
Wenn Sie auf der Front-End-Seite Ihrer Website arbeiten, müssen Sie den Browser-Cache deaktivieren. Dies ist notwendig, da Sie, wenn Sie an Ihrem JavaScript -Code arbeiten und nicht aktualisiert oder noch schlimmer aktualisiert werden, aber keine neuen Fehler angezeigt werden, den Cache deaktivieren müssen.
Deaktivieren des Cache bedeutet, dass Sie Ihren Browser auffordern, nicht mehr an alten gespeicherten Dateien Ihrer Website zu arbeiten. Dies umfasst CSS- und JavaScript -Dateien.
Um den Google Chrome-Browser-Cache zu deaktivieren, öffnen Sie die Devtools, indem Sie mit der rechten Maustaste eines Webelements klicken. Klicken Sie dann in der Symbolleiste auf die Registerkarte "Netzwerk". Überprüfen Sie schließlich das Kontrollkästchen Cache Deaktivieren.
Die oben genannten 11 Tipps können Ihr Leitfaden für den Debugging -Prozess sein. Obwohl das Debuggen viele Male langweilig sein kann, können die obigen Tricks den gesamten Prozess erheblich erleichtern.
Lassen Sie mich wissen, wenn Sie WordPress -Debugging -Tipps haben, die Sie gerne teilen möchten, bitte tun Sie dies in den Kommentaren unten!
Was soll ich tun, wenn ich nach dem Debuggen immer noch Probleme habe? Idee, professionelle Hilfe zu suchen. Sie können sich an einen WordPress -Entwickler oder Ihren Hosting -Anbieter wenden, um weitere Hilfe zu erhalten. Risiko, weitere Probleme zu verursachen, wenn Sie nicht vorsichtig sind. Stellen Sie immer sicher, dass Sie Ihre Website sichern, bevor Sie Änderungen vornehmen. Wenn Sie sich über etwas nicht sicher sind, suchen Sie professionelle Hilfe.
Das obige ist der detaillierte Inhalt vonDebugging WordPress: 11 leistungsstarke Tipps und Techniken. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!