Nebaví se mě učit anglicky když hledám nějakou chybu. Proto ——-
Ladění ve WordPressu
TÉMATA
Ladění kódu PHP je součástí jakéhokoli projektu, ale WordPress přichází se specifickými ladicími systémy navrženými ke zjednodušení procesu a standardizaci kódu přes jádro, pluginy a témata. Tato stránka popisuje různé ladicí nástroje v WordPress a jak být produktivnější ve vašem kódování a jak zvýšit celkovou kvalitu a interoperabilitu vašeho kódu.
Pro neprogramátory nebo běžné uživatele lze tyto možnosti použít k zobrazení podrobných informací o chybách.
WP_DEBUG WP_DEBUG
WP_DEBUG
je konstanta PHP (trvalá globální proměnná), kterou lze použít ke spuštění režimu „ladění“ v celém WordPressu. Ve výchozím nastavení se předpokládá, že je falešný, a je obvykle nastaven na true v souboru wp-config.php na vývojových kopiích WordPress.
// Umožňuje ladění. define ('WP_DEBUG', true);
// Toto zakáže ladění. define ('WP_DEBUG', false);
Poznámka : Hodnoty true
a false
v příkladu nejsou obklopeny apostrofy (‚), protože se jedná o logické hodnoty (true / false). Pokud nastavíte konstanty na 'false'
, budou interpretovány jako pravdivé, protože uvozovky z ní dělají řetězec spíše než booleovský.
Nedoporučuje se používat WP_DEBUG
ani jiné ladicí nástroje na živých webech; jsou určeny pro místní testování a postupné instalace.
Chyby, varování a upozornění PHP Chyby, varování a oznámení PHP
Povolení WP_DEBUG
způsobí zobrazení všech chyb, upozornění a varování PHP. To pravděpodobně upraví výchozí chování PHP, které zobrazuje pouze fatální chyby nebo zobrazuje bílou obrazovku smrti, když dojde k chybám.
Zobrazování všech oznámení a varování PHP často vede k chybovým zprávám o věcech, které se nezdají být rozbité, ale nedodržují správné konvence ověření dat uvnitř PHP. Tato varování lze snadno opravit, jakmile byl identifikován příslušný kód, a výsledný kód je téměř vždy odolnější vůči chybám a snadněji se udržuje.
Zastaralé funkce a argumenty Zastaralé funkce a argumenty
Povolení WP_DEBUG
také způsobí upozornění na zastaralé funkce a argumenty v rámci WordPress, které se používají na vašem webu. Jedná se o funkce nebo argumenty funkcí, které ještě nebyly odebrány z kódu jádra, ale jsou určeny k odstranění v blízké budoucnosti. Oznámení o ukončení podpory často označují novou funkci, která by měla být místo toho použita.
WP_DEBUG_LOG WP_DEBUG_LOG
WP_DEBUG_LOG
je společník WP_DEBUG, který způsobí, že všechny chyby budou také uloženy do souboru protokolu debug.log. To je užitečné, pokud si chcete později prohlédnout všechna upozornění nebo potřebujete zobrazit oznámení generovaná mimo obrazovku (např. během požadavku AJAX nebo wp-cron běh).
To vám umožňuje zapisovat do souboru protokolu pomocí vestavěné error_log()
funkce PHP , což může být užitečné například při ladění událostí Ajaxu.
Když je nastaveno na true
, protokol se uloží do debug.log
adresáře obsahu (obvykle wp-content/debug.log
) v souborovém systému vašeho webu. Případně jej můžete nastavit na platnou cestu k souboru, aby byl soubor uložen jinde.
define ('WP_DEBUG_LOG', true); -nebo- define ('WP_DEBUG_LOG', '/tmp/wp-errors.log');
Poznámka : Abyste WP_DEBUG_LOG
mohli dělat cokoli, WP_DEBUG
musí být povoleno (true). Pamatujte, že můžete vypnout WP_DEBUG_DISPLAY
samostatně.
WP_DEBUG_DISPLAY WP_DEBUG_DISPLAY
WP_DEBUG_DISPLAY
je dalším společníkem, WP_DEBUG
který řídí, zda se ladicí zprávy zobrazují uvnitř HTML stránek nebo ne. Výchozí hodnota je „true“, která zobrazuje chyby a varování při jejich generování. Nastavením na hodnotu false skryjete všechny chyby. To by mělo být použito ve spojení s, WP_DEBUG_LOG
aby bylo možné chyby později zkontrolovat.
define ('WP_DEBUG_DISPLAY', false);
Poznámka : Abyste WP_DEBUG_DISPLAY
mohli dělat cokoli, WP_DEBUG
musí být povoleno (true). Pamatujte, že můžete ovládat WP_DEBUG_LOG
samostatně.
SCRIPT_DEBUG SCRIPT_DEBUG
SCRIPT_DEBUG
je související konstanta, která donutí WordPress používat „dev“ verze základních souborů CSS a JavaScript namísto minifikovaných verzí, které se normálně načítají. To je užitečné, když testujete úpravy jakýchkoli vestavěných souborů .js nebo .css. Výchozí hodnota je false.
define( 'SCRIPT_DEBUG', true );
SAVEQUERIES SAVEQUERIES
SAVEQUERIES
Definice uloží dotazy databáze do pole a pole mohou být zobrazeny na pomoc analýze těchto dotazů. Konstanta definovaná jako true způsobí uložení každého dotazu, jak dlouho jeho provedení trvalo a jaká funkce jej nazvala.
define ('SAVEQUERIES', true);
Pole je uloženo v globálním poli $wpdb->queries
.
POZNÁMKA : To bude mít dopad na výkon vašeho webu, takže nezapomeňte toto vypnout, když nebudete ladit.
Příklad wp-config.php pro ladění Příklad wp-config.php pro ladění
Následující kód vložený do vašeho souboru wp-config.php zaznamená všechny chyby, upozornění a varování do souboru s názvem debug.log v adresáři wp-content. Také skryje chyby, aby nepřerušovaly generování stránky.
// Povolit režim WP_DEBUG define ('WP_DEBUG', true); // Povolit protokolování ladění do souboru /wp-content/debug.log define ('WP_DEBUG_LOG', true); // Zakáže zobrazení chyb a varování define ('WP_DEBUG_DISPLAY', false); @ini_set ('display_errors', 0); // Použijte dev verze základních souborů JS a CSS (nutné pouze v případě, že tyto základní soubory upravujete) define ('SCRIPT_DEBUG', true);
POZNÁMKA : Toto musíte vložit PŘED /* That's all, stop editing! Happy blogging. */
v souboru wp-config.php .
Ladění pluginů Ladění pluginů
Existuje mnoho ladicích pluginů pro WordPress, které zobrazují více informací o interních funkcích, a to buď pro konkrétní komponentu, nebo obecně. Zde jsou nějaké příklady:
Napsat komentář
Pro přidávání komentářů se musíte nejdříve přihlásit.