2009-07-03 10 views
9

Ich schreibe einige Plugins und Themes für WordPress, und ich finde es schwer zu debuggen, weil irgendwie bis zum Laden der Seite $ _GET, $ _POST und $ _REQUEST alle leer sind. Selbst wenn die Fehlerberichterstattung aktiviert ist, erhalte ich bei einem schwerwiegenden Fehler keine anderen Fehlermeldungen als eine leere Seite. Gibt es trotzdem einen Debug-Modus für WordPress?PHP und WordPress: Debugging

Danke!

Antwort

11

Pear Debug Wordpress Plugin: http://wordpress.org/extend/plugins/wp-pear-debug/

-Update 2015.04.08: Die obige Plugin wurde in ein paar Jahren nicht aktualisiert. Sie können auch die Debugging Wordpress PHP-Funktionen built-in verwenden in wp-config.php, das heißt:

// Enable WP_DEBUG mode 
define('WP_DEBUG', true); 

// Enable Debug logging to the /wp-content/debug.log file 
define('WP_DEBUG_LOG', true); 

// Disable display of errors and warnings 
define('WP_DEBUG_DISPLAY', false); 
@ini_set('display_errors',0); 

// Use dev versions of core JS and CSS files (only needed if you are modifying these core files) 
define('SCRIPT_DEBUG', true); 

Siehe https://codex.wordpress.org/Debugging_in_WordPress für die komplette docs

+0

Ab PHP 7.0 (unsicher), die fast Fehler als Ausnahme auslöst, scheint es, dass Wordpress manchmal einfach ohne Fehlermeldung zu stoppen. (Natürlich, obwohl die obigen Einstellungen vorgenommen wurden.) Einstellung von 'set_exception_handler' https: //gist.github.com/kaorukobo/795d43c9a594b021c2d09fffd2935b37 half dieses Problem. – kaorukobo

5

Es gibt (mehr als ein /) eine Möglichkeit, "einen 'Debug-Modus'" für PHP im Allgemeinen zu aktivieren. Und das Installieren einer Debugger-Erweiterung wie z. xdebug.
Sie benötigen einen Client, der eine Verbindung zum Debugger herstellt und die Informationen abruft + anzeigt.
Netbeans 6.7 wurde released und sein PHP-Modul unterstützt xdebug. Es ist ein nettes geworden.

+0

Ach, ich bin mit einem gehosteten Webhost, und mein PHP-Entwicklungsstil soll direkt zum Testen auf den Webhost hochgeladen werden. Danke, und wenn ich jemals auf meiner Windows-Maschine entwickeln würde, würde ich diese verwenden – Extrakun

4

Ich weiß, das lange beantwortet wurde, aber wenn Sie define('WP_DEBUG',true); in Ihrem WP- noch nicht zu sehen, Fehler config.php und werden dann diesen Code hinzufügen, direkt nach der Anweisung definieren:

if (WP_DEBUG) ini_set('display_errors',1);

3

Blick auf Wordpress FirePHP Debugger (Spam-Link r emoved). Es verwendet FirePHP zum Debuggen von WordPress über den Webbrowser.

Hauptmerkmale:

  • Automatische Erkennung von FirePHP Server-Bibliothek innerhalb php include Pfad oder getrennt Verzeichnis
  • Frühbelastung des Debuggers (vor Wordpress-Motor startet)
  • keine Änderungen an Wordpress-Kern oder Konfiguration Dateien
  • Automatische Aktivierung von WordPress Debug-Modus
  • Behandelt alle php fatale Fehler (keine leeren Seiten und Protokolle Parsing)
  • Logs Wordpress veralteten Funktionen und Argumente
  • Sicher Debuggen auf Live-Site
  • SQL-Abfragen log
  • PHP Superglobals und Konstanten
  • Systeminformationen (Wordpress und Server-Umgebung)