Bílá smrt ve WordPress

Jak ve WordPress opravit chybu „bílá smrt“

Bílá obrazovka smrti je ve WordPressu jednou z nejčastějších chyb. Je to také jedna z nejvíce frustrujících chyb, protože se neobjeví žádná chybová zpráva a nemůžete vlastně nic dělat. Někdy tato chyba postihuje pouze určitou část webu.

Bílá obrazovka smrti se může například zobrazit pouze v oblasti administrace WordPressu, zatímco vše ostatní funguje správně. V jiných případech se může zobrazit pouze u určitého příspěvku, zatímco vše ostatní funguje jak má.

V tomto článku si ukážeme, jak opravit bílou obrazovku smrti ve WordPressu.

Správa WordPress webu

Nemusíte na to být sami. V rámci služby klientům pomáháme i s diagnostikou a opravou webu.

Více informací

Proč se ve WordPressu zobrazuje bílá obrazovka smrti?

Když se zobrazí bílá obrazovka smrti, většinou to znamená, že skript na vašem webu vyčerpal limit PHP paměti.

Neodpovídající skript buď shodí váš hostingový server, nebo se jednoduše ukončí. Proto se negeneruje žádná skutečná chybová zpráva a zobrazí se obyčejná bílá (prázdná) obrazovka.

Někdy se místo bílé obrazovky může zobrazit kritická chybová zpráva.

Na webu došlo k závažné chybě. Pokyny naleznete v e-mailové schránce administrátora webu.

Ať už se zobrazí prázdná obrazovka, nebo zpráva „Na webu došlo k závažné chybě. Pokyny naleznete v e-mailové schránce administrátora webu.“, jedná se o stejnou chybu.

K této chybě může dojít také v důsledku chyby v šabloně nebo pluginu. Případně k ní může dojít, pokud se vyskytne problém s vaším hostingovým serverem.

Vzhledem k tomu, že chyba bílé obrazovky může být způsobena různými věcmi, vyžaduje její odstranění metodické řešení problémů.

Vyskytuje se problém i na jiných stránkách?

Pokud máte na stejném hostingovém účtu další WordPress stránky, zkontrolujte, zda se problém nevyskytuje i na nich.

Pokud ano, pak je to silný indikátor toho, že je problém s hostingem. Mohlo by se jednat o dočasný problém ovlivňující jejich služby a je třeba se obrátit na jejich podporu a požádat o další pomoc.

Na druhou stranu, pokud se problém vyskytuje pouze u jednoho webu nebo jeho konkrétní části, pak víte, že problém je jen zde.

Oprava chyby bílé obrazovky pomocí režimu obnovení

Pokud je chyba bílé obrazovky smrti způsobena pluginem nebo šablonou, může ji WordPress zachytit.

Nová funkce ochrany před závažnou chybou představená ve WordPressu 5.2 může někdy chybu zachytit, takže se bílá obrazovka nemusí vůbec zobrazit. Místo toho se zobrazí zpráva, že web má technické potíže.

Na e-mailovou adresu správce také obdržíte e-mail s předmětem „Web má technické potíže“. Součástí e-mailu bude také zpráva:

V tomto případě WordPress zaznamenal chybu v jednom z používaných pluginů - NÁZEV PLUGINU NEBO ŠABLONY.

Tato e-mailová zpráva upozorní na plugin, který chybu způsobil, a bude také obsahovat speciální odkaz. Tento odkaz vám umožní přihlásit se do režimu obnovení WordPressu a deaktivovat jej.

WordPress režim obnovení

Pokud se však zobrazuje obyčejná bílá obrazovka smrti bez možnosti e-mailu nebo režimu obnovení, musíte chybu opravit ručně.

Zvýšení limitu paměti

K této chybě obvykle dochází, protože skript vyčerpal paměť a skončil uprostřed běhu. Chcete-li to napravit, musíte zvýšit paměť PHP dostupnou pro WordPress. To umožní skriptu využít více paměti k dokončení práce, kterou měl vykonat.

Navýšení php memory limit provedete v nastavení hostingu, případně požádejte o pomoc jeho podporu.

Pro ilustraci, pro běžný WordPress web je běžné nastavit php memory limit na 256 MB, pro e-shopy 512 MB a více.

Vypnutí všech pluginů

Pokud zvýšení limitu paměti nepomohlo nebo pokud již máte nastavený vysoký limit, například 256 nebo 512 MB, můžete zkusit i další postup.

Podle našich zkušeností s řešením tohoto problému jsme většinou zjistili, že chyba je obvykle v pluginu nebo šabloně. Dalším krokem by tedy mělo být deaktivovat všechny pluginy.

Pokud máte stále přístup do administrace WordPressu, můžete jednoduše přejít na stránku Pluginy a pomocí funkce Hromadné akce všechny pluginy zaškrtnout a poté deaktivovat.

Hromadná deaktivace pluginů

Pokud nemáte přístup do administrace WordPressu, budete muset všechny pluginy deaktivovat přes FTP.

Nejprve se připojte k webu WordPress pomocí FTP klienta. Po připojení přejděte do složky wp-content, kde uvidíte složku „plugins“. Klikněte na ní pravým tlačítkem myši a vyberte možnost přejmenovat. Složku plugins můžete přejmenovat například na plugins-vypnuto.

WordPress složka wp-content

FTP klient složku plugins přejmenuje.

Poté zkuste stránku znovu načíst. WordPress hledá složku s názvem plugins pro načtení všech pluginů a když složku nenajde, jednoduše všechny pluginy deaktivuje.

Pokud se tím problém vyřeší, přejmenujte složku zpět a aplikujte obdobný postup přímo na pluginy, abyste našli přesně ten, který chybu způsobuje. Tedy jakmile jej přejmenujete a web se rozběhne, jedná se  o plugin, který chybu s největší pravděpodobností způsobil.

Aktivace výchozí šablony

Pokud řešení problému pomocí vypnutí pluginů problém nevyřeší, měli byste zkusit nahradit stávající šablonu výchozí šablonou.

Nejprve se připojte k webu pomocí FTP klienta a přejděte do složky /wp-content/themes/. Ta obsahuje všechny nainstalované šablony na vašem webu a podobně jako u pluginů, přejmenujte složku šablony.

Stejně jako u pluginů, když se složka jmenuje jinak, WordPress ji nenajde a šablonu nenačte. Pokud se v tuto chvíli rozběhne administrace WordPressu, je možné, že chybu způsobuje právě šablona. Přihlaste se do administrace WordPressu a nainstalujte výchozí šablonu a zkuste ji aktivovat.

Mezi výchozí šablony patří například Twenty Twenty-Three, Twenty Twenty-Two a Twenty Twenty-one.

Pokud to problém vyřeší, měli byste se podívat do souboru functions.php vaší původní šablony. Pokud jsou v dolní části souboru functions.php mezery navíc, je třeba je odstranit a někdy to problém vyřeší.

Alternativně zvažte stažení aktuální kopie šablony a její přeinstalaci.

Povolení režimu ladění pro zachycení chyb ve WordPressu

Pokud dosud nic nepomohlo, dalším krokem je zapnutí ladění ve WordPressu. To vám umožní zjistit, jaký typ chyb se vypisuje.

Jednoduše přidejte následující kód do souboru wp-config.php.

define( 'WP_DEBUG', true);
define( 'WP_DEBUG_LOG', true );

Detailní návod najdete v článku Jak u WordPressu aktivovat debug.

Po přidání této položky se namísto prázdné obrazovky objeví chyby, varování a upozornění. Ty vám mohou pomoci určit hlavní příčinu.

Chyby se zároveň zapíší do souboru debug.log ve složce wp-content na FTP.

WordPress debug.log

Vymazat mezipaměť WordPressu

Někdy se může stát, že máte přístup do administrace webu, ale na front-endu webu je bílá obrazovka smrti. To se může stát kvůli pluginu na cachování. Jednoduše vyprázdněte mezipaměť pomocí pluginu, který cache vytváří.

Oprava chyby bílé obrazovky u delších článků

Pokud se vám bílá obrazovka smrti zobrazuje pouze u velmi dlouhých příspěvků nebo stránek, může tato metoda fungovat.

Tento trik v podstatě zvyšuje schopnost PHP zpracovávat text tím, že zvyšuje limit rekurze a zpětného procházení. Do souboru wp-config.php vložte následující kód:

/** WPLAMA.cz - oprava delších článků */
ini_set('pcre.recursion_limit',20000000);
ini_set('pcre.backtrack_limit',10000000);

Chápeme, že se jedná o velmi nepříjemnou chybu, která nemá přesně dané řešení a doufáme, že některý z výše uvedených tipů problém vyřešil.

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í

Diskuze

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

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