Debuggen in WordPress

In Visual Studio können Sie Ihre Anwendung problemlos debuggen, indem Sie den Debug-Modus ausführen und Haltepunkte in Ihrer Anwendung setzen.

Wie würdest du in WordPress dasselbe erreichen?

Ich habe ein Problem in meiner Website und es gibt keine Fehler oder Warnungen. Ich habe genug Zeit damit verbracht, Einstellungen zu optimieren, um das ohne Glück herauszufinden. Die einzige Lösung, die ich gefunden habe, ist Breakpoints zu setzen und die Anwendung wie in .NET zu debuggen.

Ich weiß, dass, wenn Sie den Debug-Modus in WordPress aktivieren, es eine gigantische Debug-Ausgabe oben auf der Website ausgibt – das ist in Ordnung, aber ich kann einfach nicht effizient debuggen.

Bitte lassen Sie mich wissen, ob es einen besseren Ansatz zum Debuggen von WP-Sites in Visual Studio gibt.

Solutions Collecting From Web of "Debuggen in WordPress"

Debugging in WordPress kann ein bisschen schwierig sein, wenn Sie zum ersten Mal starten, während ich keine Breakpoints wie Visual Studio verwende, kann ich Ratschläge geben, wie man PHP im Allgemeinen debuggt, sowie die Debugging-Ausgabe von WordPress einschalten .

Starten Sie zuerst Ihre wp-config.php und suchen Sie die folgende Zeile.

define('WP_DEBUG', false); 

Standardmäßig ist dies auf “false” gesetzt, und der zweite Parameter wird auf “true” gesetzt. Dadurch können die PHP-Benachrichtigungen, Warnungen und Fehlermeldungen in Ihrem Browser angezeigt werden.

Eine schnelle Ansicht des WordPress Codex zeigt, dass Sie datenbankbezogene Fehlermeldungen schnell aktivieren können:

 < ?php $wpdb->show_errors(); ?> < ?php $wpdb->print_error(); ?> 

Auf diese Weise können Sie die letzte sql-Abfrage, die gesendet wurde, sowie alle Fehler anzeigen, die möglicherweise von MySql zurückgegeben wurden.

Wenn ich dann versuche, herauszufinden, was an Variablen oder Datenstrukturen wackelig ist, finde ich das immer hilfreich:

 
 < ?php print_r($arrayOrObject); 

Wenn Sie die Vor-Tags verwenden, wird die Rohausgabe ausgegeben, ohne dass eine HTML-Vorformatierung erfolgt. So können Sie Ihre Ansicht von assoziativen Arrays und Objekten verbessern. var_dump () - functionen sind auch auf diese Weise nützlich.

Wenn Sie versuchen, etwas wie eine Postback-, Ajax-Anfrage zu debuggen, und Sie in die Mitte davon kommen wollen, geben Sie einfach die Variablen zurück, die Sie zu debuggen versuchen, und geben sofort den Befehl diey () aus, z.

 echo '
'; echo var_dump($arrayOrObject); echo '

'; die();

Für Entwicklungsumgebungen bevorzuge ich etwas in der Art eines WAMP-Stacks (MAMP for mac osx aus dem Kopf).

Es ist definitiv nützlich, eine lokale Kopie Ihrer WordPress-Instanz auf Ihrem eigenen Rechner zu starten, so dass Sie mit den oben genannten Techniken nach Bedarf experimentieren können. Die oben genannten Tipps zur Fehlerbehebung haben mich durch die letzten 5 Jahre PHP-Programmierung und WordPress-Programmierung gebracht. Hoffe, du findest das nützlich!

WordPress verfügt über ein eigenes Debugging-System, das Konstanten verwendet, wodurch das Ein- und Ausschalten beim Wechsel zwischen verschiedenen Umgebungen erleichtert wird. Alle Konstanten sind in der Datei wp-config.php definiert.

define( 'WP_DEBUG', true )

Wird WP_DEBUG auf “true” gesetzt, werden alle PHP-Fehler, Warnungen und Hinweise auf dem Bildschirm angezeigt. Außerdem werden Benachrichtigungen über veraltete functionen und Argumente ausgegeben.

define( 'WP_DEBUG_LOG', true )

Wenn Sie WP_DEBUG_LOG aktivieren, werden alle Fehler in einer Datei gespeichert ( debug.log in / wp-content /). Es ist nützlich beim Debuggen von AJAX-Ereignissen.

define( 'WP_DEBUG_DISPLAY', true )

Als Ergänzung zu den beiden vorherigen Konstanten kann mit WP_DEBUG_DISPLAY gesteuert werden, ob die Fehler auf der Seite gedruckt werden sollen oder nicht.

define( 'SAVEQUERIES', true )

Wenn SAVEQUERIES als wahr definiert ist, wird jede Abfrage, die ausgeführt wird, gespeichert. Außerdem gibt es Informationen darüber, wie lange eine Abfrage dauerte und welche function sie aufgerufen hat. Alle Informationen werden in $wpdb->queries gespeichert.

Außerdem gibt es eine SCRIPT_DEBUG- Konstantendefinition define( 'SCRIPT_DEBUG', true) , die WordPress dazu zwingt, die Entwicklungsversionen der core-CSS- und JS-Dateien anstelle der verkleinerten Versionen zu verwenden.


Mit Visual Studio (Sie benötigen PHP Tools) / PHPStorm / Eclipse können Sie Debuggen mit Xdebug durchführen. Wenn Sie XAMPP / MAMP verwenden, ist Xdebug bereits installiert, Sie müssen es also nur konfigurieren.

php.ini und fügen Sie diese zwei Zeilen hinzu:

 zend_extension="/absolute/path/to/xdebug.so" xdebug.remote_enable = 1 

Es gibt andere Optionen, die konfiguriert werden können, und Sie können darüber in der xdebug-Dokumentation nachlesen . Sobald Sie mit der Bearbeitung der php.ini Datei php.ini , starten Sie Ihren Apache-Server neu.

Der nächste Schritt besteht darin, die PHP-Debugger-Einstellungen in Ihrem Editor festzulegen. Navigieren Sie zum Dialogfeld Einstellungen / Voreinstellungen und suchen Sie die PHP-Einstellungen. Wenn Sie damit fertig sind, können Sie mit dem Setzen von Haltepunkten beginnen.