Nebaví se mě učit anglicky když hledám nějakou chybu. Proto ——-

Ladění ve WordPressu

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_DEBUGje 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 truefalsev 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_DEBUGani 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_DEBUGzpů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.

Nahoru ↑

Zastaralé funkce a argumenty Zastaralé funkce a argumenty

Povolení WP_DEBUGtaké 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.

Nahoru ↑

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.logadresář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_LOGmohli dělat cokoli, WP_DEBUGmusí být povoleno (true). Pamatujte, že můžete vypnout WP_DEBUG_DISPLAYsamostatně.

Nahoru ↑

WP_DEBUG_DISPLAY WP_DEBUG_DISPLAY

WP_DEBUG_DISPLAYje dalším společníkem, WP_DEBUGkterý ří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_LOGaby bylo možné chyby později zkontrolovat.

define ('WP_DEBUG_DISPLAY', false);

Poznámka : Abyste WP_DEBUG_DISPLAYmohli dělat cokoli, WP_DEBUGmusí být povoleno (true). Pamatujte, že můžete ovládat WP_DEBUG_LOGsamostatně.

Nahoru ↑

SCRIPT_DEBUG SCRIPT_DEBUG

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

Nahoru ↑

SAVEQUERIES SAVEQUERIES

SAVEQUERIESDefinice 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.

Nahoru ↑

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 .

Nahoru ↑

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:

Nahoru ↑

Externí zdroje Externí zdroje