Nefunguje WordPress po aktualizácii? Príčiny a bezpečný postup opravy

Prečo WordPress po aktualizácii nefunguje?
Kliknete na „Aktualizovať“, obnovíte stránku a namiesto webu vidíte prázdnu bielu obrazovku alebo hlásenie o kritickej chybe. Prvá myšlienka je väčšinou najhoršia: stratili ste web aj obsah. V drvivej väčšine prípadov to tak nie je. Aktualizácia jadra WordPressu, témy alebo pluginu takmer nikdy nezmaže dáta, spôsobí len to, že jedna konkrétna súčasť webu prestane byť kompatibilná so zvyškom a PHP nedokáže stránku vykresliť.
Podľa oficiálnej príručky WordPress.org pre pokročilú administráciu ,
biela obrazovka („White Screen of Death“, WSOD) môže byť spôsobená chybou v PHP kóde aj chybou v databáze.
Po aktualizácii ide najčastejšie o nekompatibilný plugin, konflikt témy alebo poškodený súbor .htaccess.
Krátka odpoveď: Web po aktualizácii prestal fungovať takmer vždy kvôli jednému pluginu,
téme alebo PHP nekompatibilite, nie kvôli strate dát. Od WordPressu 5.2 sa pri fatálnej chybe zvyčajne
automaticky spustí Recovery Mode a na e-mail správcu príde odkaz na bezpečné prihlásenie. Ak e-mail
nepríde, rovnaký problém sa dá vyriešiť zapnutím WP_DEBUG, postupnou deaktiváciou pluginov
alebo prepnutím na predvolenú tému.
Čo je Recovery Mode a ako funguje
Recovery Mode je vstavaná funkcia WordPressu (dostupná od verzie 5.2), ktorá podľa oficiálnej dokumentácie WordPress.org automaticky nastúpi, keď WordPress zaznamená fatálnu chybu PHP počas bežného načítania stránky. Namiesto bielej obrazovky uvidia návštevníci správu o technických problémoch a na e-mail správcu príde odkaz na prihlásenie v bezpečnom režime, v ktorom sú problematické pluginy alebo témy dočasne pozastavené len pre danú reláciu.
Dôležitá výnimka: ak web na odosielanie pošty používa plugin (napríklad SMTP doplnok) a fatálna chyba nastane skôr, než sa tento plugin stihne načítať, e-mail o Recovery Mode odíde priamo zo servera bez autentifikácie. Ak sú SPF a DKIM záznamy domény nastavené nesprávne, presne tak, ako opisuje náš článok o probléme s odosielaním e-mailov z WordPressu, môže sa stať, že sa upozornenie na Recovery Mode k vám vôbec nedostane.
Najčastejšie príčiny po aktualizácii
Nekompatibilný plugin
Plugin nebol aktualizovaný pre novú verziu WordPressu alebo PHP a pri načítaní spôsobí fatálnu chybu.
Konflikt témy
Aktívna téma používa zastarané funkcie alebo nie je kompatibilná s aktualizovaným jadrom či pluginom.
Vyčerpaný limit pamäte PHP
Podľa oficiálnej dokumentácie chyba „Allowed Memory Size Exhausted“ znamená, že inštalácia WordPressu nemá dostatok pridelenej pamäte na dokončenie požadovanej operácie.
Poškodený súbor alebo syntaktická chyba
Chýbajúca bodkočiarka, zátvorka alebo poškodený .htaccess po prerušenej aktualizácii môžu
spôsobiť rovnaký efekt ako nekompatibilný plugin.
Ako problém opraviť krok za krokom
- Skontrolujte e-mail správcu. Ak WordPress spustil Recovery Mode, dostanete e-mail s odkazom na bezpečné prihlásenie, kde sú problematické komponenty dočasne pozastavené.
- Ak e-mail neprišiel, zapnite
WP_DEBUG. V súborewp-config.phpzmeňtedefine('WP_DEBUG', false);natrue. WordPress začne zapisovať chyby dowp-content/debug.log, kde posledné riadky zvyčajne presne pomenujú súbor a plugin, ktorý chybu spôsobil. - Deaktivujte všetky pluginy naraz. Ak sa neviete prihlásiť do administrácie, cez FTP
alebo správcu súborov hostingu premenujte priečinok
wp-content/pluginsnapríklad naplugins-off. Ak sa web sprevádzkuje, premenujte priečinok späť a pluginy zapínajte jeden po druhom, kým sa chyba znovu neobjaví. - Skúste predvolenú tému. Prepnite na štandardnú tému WordPressu (napríklad aktuálnu Twenty-tému), aby ste vylúčili konflikt na strane témy.
- Skontrolujte limit pamäte PHP. Ak log ukazuje chybu vyčerpanej pamäte, limit sa dá
zvýšiť v
wp-config.phpalebo priamo v konfiguráciiphp.inina hostingu. - Overte funkčnosť a vypnite
WP_DEBUG. Po náprave chybu znova zapnite web, vypnite ladiaci režim a odstráňte staré záznamy zdebug.log, aby ste tam nenechávali citlivé technické detaily.
Porovnanie spôsobov prístupu k webu, ktorý nefunguje
| Spôsob | Kedy funguje | Čo vyžaduje |
|---|---|---|
| Recovery Mode | Keď WordPress automaticky rozpozná fatálnu chybu a e-mail so správcovským odkazom dorazí | Funkčnú doručiteľnosť e-mailov správcu, žiadny FTP prístup nie je potrebný |
| FTP alebo správca súborov hostingu | Keď administrácia nie je dostupná vôbec alebo e-mail Recovery Mode nedorazil | Prístup k FTP/SFTP alebo file manageru hostingu |
| WP-CLI | Pri opakovaných problémoch alebo na weboch spravovaných skúseným administrátorom | Príkazový riadok a podporu WP-CLI na hostingu |
Riziká a časté chyby
Najväčšie riziko nie je samotná chyba, ale panikárske riešenie problému priamo na produkčnom webe bez zálohy. Pred akýmkoľvek zásahom sa oplatí overiť, či existuje aktuálna záloha z obdobia pred aktualizáciou, ktorú je možné v prípade potreby obnoviť.
Ďalšia bežná chyba je nechať zapnutý WP_DEBUG na produkčnom webe natrvalo. Zobrazené chybové
hlásenia môžu prezradiť štruktúru webu alebo cesty k súborom, preto sa má ladiaci režim vypnúť hneď po
vyriešení problému. Rovnako sa oplatí neaktualizovať viacero pluginov, tému aj jadro naraz bez otestovania
na staging verzii webu, pretože pri súbežnej zmene je oveľa ťažšie určiť, ktorá časť aktualizácie chybu
spôsobila.
Koľko to stojí a čo to vyžaduje
Jednoduchá deaktivácia jedného konfliktného pluginu je zvyčajne otázkou minút a nemá priamy poplatok, ak máte prístup k administrácii alebo FTP. Náklady rastú, ak je potrebné obnoviť web zo zálohy, opraviť poškodené súbory jadra alebo diagnostikovať kombináciu viacerých súbežných zmien. Presný rozsah práce závisí od toho, aká záloha je k dispozícii, koľko pluginov je aktívnych a či ide o jednorazový výpadok alebo opakujúci sa problém po každej aktualizácii.
Kontrolný zoznam pred ďalšou aktualizáciou
- Pred aktualizáciou existuje čerstvá záloha databázy aj súborov webu.
- E-mailová adresa správcu je funkčná a schránka nie je plná.
- Väčšie aktualizácie sa najprv otestujú na staging verzii webu, ak je dostupná.
- Pluginy a témy sa aktualizujú postupne, nie všetky naraz, keď ide o dôležitý produkčný web.
WP_DEBUGje po vyriešení akéhokoľvek problému opäť vypnutý.- Prístup cez FTP alebo file manager hostingu je funkčný pre prípad núdze.
Súvisiace návody a zdroje
- WordPress programátor: Oprava webu a WooCommerce
- WordPress neodosiela e-maily: SMTP, SPF, DKIM a riešenie problémov
- Ako vybrať rýchly a bezpečný WordPress hosting
- Kontaktujte nás
Web nefunguje aj po vlastnom pokuse o opravu?
Pošlite nám adresu webu a stručný popis toho, čo sa stalo (napríklad či ide o bielu obrazovku, chybové hlásenie alebo problém po konkrétnej aktualizácii). Najskôr preveríme skutočnú príčinu podľa logov a existujúcej zálohy a až potom navrhneme bezpečný postup opravy aj s cenovým odhadom.
Preveriť problém po aktualizáciiNa záver
Biela obrazovka po aktualizácii vyzerá dramaticky, ale vo väčšine prípadov ide o predvídateľný a rýchlo riešiteľný problém: jedna súčasť webu prestala byť kompatibilná so zvyškom. Dobrá záloha a funkčný Recovery Mode dokážu paniku premeniť na desaťminútovú opravu. Ak si nie ste istí, ktorý plugin alebo téma je na vine, alebo web spravuje viac ľudí naraz, je bezpečnejšie nechať diagnostiku odborníkovi než skúšať náhodné zásahy priamo na produkčnom webe.
Časté otázky
Vo väčšine prípadov nie. Biela obrazovka väčšinou znamená, že PHP nedokáže spracovať jednu časť kódu, nie že by databáza s obsahom bola vymazaná. Napriek tomu je aktuálna záloha pred každou väčšou aktualizáciou nevyhnutná poistka.
Ak fatálna chyba nastane skôr, než sa stihne načítať plugin zodpovedný za odosielanie pošty,
e-mail odíde priamo zo servera bez autentifikácie a môže skončiť v spame alebo byť odmietnutý.
V takom prípade použite WP_DEBUG alebo FTP prístup namiesto čakania na e-mail.
Ak viete presne, ktorý plugin ste naposledy aktualizovali, môžete skúsiť deaktivovať iba ten. Pokiaľ si nie ste istí alebo aktualizácia prebehla automaticky na viacerých pluginoch naraz, bezpečnejšie je deaktivovať všetky a zapínať ich postupne.
Nie. Zobrazené chybové hlásenia môžu prezradiť cesty k súborom a štruktúru webu návštevníkom aj potenciálnym útočníkom. Debug režim zapnite iba na čas diagnostiky a hneď po vyriešení problému ho vypnite.
Časová zhoda je najsilnejší indikátor: ak web fungoval tesne pred aktualizáciou a prestal hneď po
nej, príčinou je takmer vždy niektorá zo zmenených súčastí. Záznam v debug.log navyše
zvyčajne priamo pomenuje súbor a plugin, kde chyba nastala.
Áno, obnovenie zo zálohy spred aktualizácie web okamžite sprevádzkuje, ale nevyrieši, prečo sa problém stal. Pred opätovnou aktualizáciou tej istej súčasti sa oplatí najprv zistiť skutočnú príčinu, inak sa rovnaká chyba môže zopakovať.
Opakujúci sa problém zvyčajne znamená, že web má zastaraný plugin alebo vlastný kód, ktorý nie je priebežne udržiavaný, alebo že aktualizácie prebiehajú bez otestovania na staging verzii webu. V takom prípade sa oplatí vyriešiť príčinu trvalo, nielen opravovať dôsledky po každej zmene.
Ak nemáte aktuálnu zálohu, ak sa chyba po deaktivácii pluginov nevyrieši, alebo ak web spravuje viacero ľudí a nie je jasné, kto a čo naposledy zmenil, je bezpečnejšie nechať diagnostiku a opravu odbornej kontrole než experimentovať priamo na produkčnom webe.