2009-07-03 9 views
9

Piszę kilka wtyczek i motywów dla WordPressa i trudno mi je debugować, ponieważ w jakiś sposób do czasu załadowania strony, $ _GET, $ _POST i $_REQUEST są puste. Nawet przy włączonym raportowaniu błędów nie otrzymuję komunikatów o błędach innych niż pusta strona, gdy wystąpi błąd krytyczny. Czy mimo to należy włączyć tryb debugowania dla WordPress?PHP i WordPress: Debugowanie

Dzięki!

Odpowiedz

11

Gruszka Debug Wordpress wtyczki: http://wordpress.org/extend/plugins/wp-pear-debug/

Aktualizacja 08.04.2015: Powyższy Wtyczka nie została zaktualizowana w ciągu kilku lat. Można również skorzystać z wbudowanego w PHP WordPress funkcji debugowania w wp-config.php, tj:

// 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); 

Zobacz https://codex.wordpress.org/Debugging_in_WordPress dla kompletnych docs

+0

od PHP 7.0 (niepewny), który wyrzuca prawie błędy jako wyjątek, wydaje się, że Wordpress po prostu przestaje renderować bez żadnych komunikatów o błędach. (Oczywiście, mimo że powyższe ustawienia zostały wykonane.) Ustawienie 'set_exception_handler' https: //gist.github.com/kaorukobo/795d43c9a594b021c2d09fffd2935b37 pomógł rozwiązać ten problem. – kaorukobo

5

Istnieje jeden (więcej niż jeden) sposób włączania trybu debugowania "" dla php w ogóle. I to jest instalacja rozszerzenia debuggera, np. xdebug.
Potrzebujesz klienta, który łączy się z debuggerem i pobiera + wyświetla informacje.
Netbeans 6.7 został released, a jego moduł php obsługuje xdebug. Stało się miłym IDE for PHP development.

+0

Niestety, jestem przy użyciu hostowanego hosta, a mój styl programowania PHP jest przesyłany bezpośrednio do hosta w celu przetestowania. Mimo to i jeśli kiedykolwiek rozwijam się na moim komputerze z systemem Windows użyłbym tego – Extrakun

4

wiem to od dawna odpowiedział, ale jeśli define('WP_DEBUG',true); w WP- błędy config.php i nadal nie widząc, a następnie dodać ten kod tuż po określić oświadczenie:

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

3

Spójrz na WordPress FirePHP Debugger (spam łącza r emoved). Wykorzystuje FirePHP do debugowania Wordpress za pomocą przeglądarki internetowej.

Główne cechy:

  • Automatyczne wykrywanie FirePHP biblioteki serwera wewnątrz PHP zawierać ścieżkę lub oddzielone katalogu
  • Wczesne ładowanie debugera (przed uruchomieniem silnika WordPress)
  • Brak modyfikacji rdzenia WordPress lub konfiguracji pliki
  • Automatyczne włączanie trybu debugowania WordPress
  • Obsługuje wszystkie błędy krytyczne PHP (nie ma więcej pustych stron i analizowanie dzienników)
  • Dzienniki WordPress nieaktualne funkcje i argumenty
  • Bezpieczne debugowania na żywo miejscu
  • zapytań SQL zalogować
  • superglobals PHP i stałych
  • Informacje o systemie (WordPress i środowisko serwera)