debug

WordPress debug (aktivace a možnosti nastavení)

Při vývoji a ladění WordPress webu je klíčové mít přístup k informacím o chybách a varováních v kódu. WordPress proto obsahuje vestavěný debugovací režim, který pomáhá odhalit a opravit problémy v jádře, pluginech i šablonách.

Ladění PHP kódu je nedílnou součástí každého vývojového procesu, a správná aktivace debug režimu vám může ušetřit mnoho času při hledání chyb a optimalizaci kódu. V tomto článku si ukážeme, jak debug režim ve WordPressu aktivovat a efektivně využívat.

Aktivace deubg ve WordPress

Pro aktivaci režimu debug se ve WordPress používá soubor wp-config.php, který se obvykle nachází v základní složce WordPres na FTP.

Pro úpravu souboru můžete použít editor zdarma, například Visual Code nebo Notepad++.

WP_DEBUG

Aktivace je velmi jednoduchá. Stačí otevřít soubor wp-config.php a v něm najít řádek s tímto kódem:

define('WP_DEBUG', false);

a ten změnit na:

define('WP_DEBUG', true);

Po aktivaci začne WordPress zobrazovat varování, chyby a další ladicí zprávy. Často se tak objeví i chyby ve funkcích, které na první pohled fungují správně, ale mohou mít problém například se špatnou validací dat. Díky ladicím zprávám lze tyto chyby snadno opravit – WordPress totiž zobrazí typ chyby, řádek a soubor, kde se problém nachází. Odstranění těchto chyb vede k odolnějšímu a lépe spravovatelnému kódu.

Zastaralé funkce a argumenty

Po zapnutí WP_DEBUG se často zobrazují i varování o zastaralých funkcích a argumentech (deprecated functions). Tyto funkce a parametry zatím z kódu WordPressu nebyly odstraněny, ale mohou být v budoucích verzích nahrazeny nebo úplně zrušeny. Pokud je ve vašem kódu používáte, doporučuje se přejít na jejich novější alternativy.

Užitečné ladicí konstanty

Kromě základního WP_DEBUG nabízí WordPress několik dalších ladicích nástrojů, které vám pomohou efektivněji analyzovat a odstraňovat chyby v kódu. Tyto konstanty umožňují například ukládat chybové zprávy do souboru, zobrazovat nekomprimované verze skriptů nebo sledovat SQL dotazy prováděné databází. Jejich správné využití vám může ušetřit mnoho času při vývoji i optimalizaci webu.

WP_DEBUG_LOG

Pokud chcete chyby ukládat do souboru, místo aby se zobrazovaly na stránce, můžete aktivovat WP_DEBUG_LOG. Tím se všechny chyby zapíší do souboru debug.log v adresáři /wp-content/:

define('WP_DEBUG_LOG', true);

Tato možnost je užitečná zejména při ladění AJAX požadavků nebo WP-Cron úloh, protože chyby z těchto procesů se jinak nemusí zobrazit přímo na stránce.

WP_DEBUG_DISPLAY

Tato konstanta určuje, zda se ladicí zprávy mají zobrazovat přímo v HTML výstupu:

define('WP_DEBUG_DISPLAY', false);

Pokud ji nastavíte na false, chyby se na stránce nebudou zobrazovat, ale pokud máte aktivní WP_DEBUG_LOG, stále se budou ukládat do souboru debug.log.

SCRIPT_DEBUG

SCRIPT_DEBUG přinutí WordPress načítat nekomprimované verze CSS a JavaScript souborů, místo jejich optimalizovaných (minifikovaných) verzí. To je užitečné při testování a ladění vlastních úprav v souborech .js nebo .css:

define('SCRIPT_DEBUG', true);

SAVEQUERIES

Pokud potřebujete analyzovat databázové dotazy, můžete aktivovat SAVEQUERIES. Tím se všechny provedené SQL dotazy uloží do pole, včetně času provedení a funkce, která je zavolala:

define('SAVEQUERIES', true);

Seznam dotazů pak najdete v proměnné:

global $wpdb;
print_r($wpdb->queries);

Pozor: Aktivace SAVEQUERIES může výrazně zpomalit běh webu. Proto jej po dokončení ladění nezapomeňte vypnout.

Doporučené nastavení wp-confing.php pro debug WordPressu

Pokud chcete ladit WordPress efektivně, doporučuje se použít následující nastavení v souboru wp-config.php. Tento kód zajistí, že všechny chyby, varování a ladicí zprávy budou ukládány do souboru debug.log v adresáři /wp-content/, aniž by ovlivňovaly zobrazení webu.

Stačí nahradit nebo přidat následující řádky:

 // Zapne debug
define('WP_DEBUG', true);

// Zapne ukládání zpráv do souboru /wp-content/debug.log
define('WP_DEBUG_LOG', true);

// Vypne zobrazování chyb v HTML
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors',0);

// Zapne developerskou verzi souborů JS and CSS. (využijte pouze, pokud tyto soubory upravujete)
define('SCRIPT_DEBUG', true);

Toto nastavení vám umožní ladit chyby bezpečně a efektivně, aniž by návštěvníci webu viděli chybové zprávy. Po dokončení ladění doporučujeme debug režim vypnout, aby nedošlo k úniku citlivých informací.

Neuteklo vám něco?

Pokrok a WordPress na nikoho nečekají, tak nám tu raději nechte email, ať o nic nepřijdete!

Nespamujeme! Další informace naleznete v našich zásadách ochrany osobních údajů.

Správa WordPress webu

Nemusíte na to být sami. Pomůžeme vám s pravidelnou údržbou i novými vylepšeními.

Více informací

1 názor na “WordPress debug (aktivace a možnosti nastavení)”

  1. Pavel Krátký

    Zdravím, díky za článek. V uvedeném kódu vám na řádku 9 chybí druhý parametr u funkce ini_set. Konkrétně tam bude 1 nebo „1“ nebo true – což ale jistě víte 🙂

Diskuze

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Nákupní košík
Přejít nahoru