Błąd krytyczny i biały ekran w WordPressie – jak to naprawić krok po kroku

To najczęstsza awaria, z jaką zgłaszają się do mnie właściciele stron: rano wszystko działało, a po aktualizacji zamiast strony jest biała kartka albo komunikat o błędzie krytycznym. Brzmi groźnie, ale w zdecydowanej większości przypadków dane są bezpieczne – po prostu jakiś fragment kodu PHP przestał działać.
Skąd bierze się błąd krytyczny?
Od wersji 5.2 WordPress zamiast pustej strony wyświetla komunikat o błędzie krytycznym (w polskiej wersji brzmi on mniej więcej: „Na tej stronie wystąpił krytyczny błąd”) i wysyła do administratora e-mail z opisem problemu. Gdy ta funkcja nie zadziała, zobaczysz po prostu biały ekran. Przyczyny są te same:
- wtyczka lub motyw niezgodne z nową wersją WordPressa albo PHP,
- konflikt dwóch wtyczek,
- błąd we własnym kodzie, np. w pliku
functions.php, - za mały limit pamięci PHP,
- uszkodzone lub niekompletne pliki po przerwanej aktualizacji.
Krok 1: sprawdź e-mail administratora
WordPress wysyła na adres administratora wiadomość z nazwą wtyczki lub motywu, który spowodował błąd, oraz ze specjalnym linkiem do trybu odzyskiwania. Po kliknięciu zalogujesz się do kokpitu mimo awarii i wyłączysz winowajcę jednym kliknięciem. Zajrzyj też do folderu spam.
Krok 2: włącz zapis błędów
Jeśli e-maila nie ma, dowiedz się, co dokładnie się zepsuło. W pliku wp-config.php, nad linią „To wszystko, zakończ edycję”, dodaj:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Odśwież stronę i otwórz plik wp-content/debug.log. Linia z PHP Fatal error wskaże konkretny plik – ścieżka typu /wp-content/plugins/nazwa-wtyczki/… od razu zdradza winowajcę. Po naprawie usuń te linie, a plik debug.log skasuj – nie powinien być publicznie dostępny.
Krok 3: wyłącz wtyczki bez dostępu do kokpitu
Połącz się z serwerem przez FTP/SFTP lub menedżer plików w panelu hostingu i zmień nazwę katalogu:
wp-content/plugins → wp-content/plugins_off
WordPress nie znajdzie wtyczek i wyłączy je wszystkie. Jeśli strona wróciła – przywróć nazwę plugins, a potem zmieniaj nazwy katalogów pojedynczych wtyczek, aż znajdziesz tę, która powoduje błąd. Masz dostęp do WP-CLI? Szybciej:
wp plugin deactivate --all
wp plugin activate nazwa-wtyczki
Krok 4: sprawdź motyw
Jeśli wyłączenie wtyczek nie pomogło, zmień nazwę katalogu aktywnego motywu w wp-content/themes. WordPress przełączy się na domyślny motyw (np. Twenty Twenty-Five), o ile jest zainstalowany. Gdy strona ruszy – winny jest motyw lub zmiany w jego pliku functions.php.
Biały ekran wygląda jak koniec świata, a zwykle jest jedną linijką w debug.log, która mówi dokładnie, co poszło nie tak.
Krok 5: limit pamięci i wersja PHP
Jeśli w logu widzisz Allowed memory size … exhausted, zwiększ limit w wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
Błąd mógł też pojawić się po zmianie wersji PHP na hostingu – stara wtyczka może nie działać na nowym PHP. Wtedy zaktualizuj ją lub zamień na aktywnie rozwijany odpowiednik, zamiast cofać PHP do wersji bez wsparcia.
Krok 6: podmień pliki WordPressa
Gdy błąd dotyczy plików rdzenia (ścieżki wp-includes lub wp-admin w logu), pobierz świeżą paczkę z wordpress.org i wgraj katalogi wp-admin i wp-includes na serwer, nadpisując istniejące. Nie ruszaj katalogu wp-content ani pliku wp-config.php.
Jak uniknąć tego następnym razem:
- Rób kopię zapasową przed każdą aktualizacją.
- Aktualizuj wtyczki pojedynczo, a nie wszystkie naraz.
- Na rozbudowanych stronach testuj zmiany najpierw na kopii testowej (staging).
- Usuwaj wtyczki porzucone przez autorów.
Najczęstsze pytania
Co oznacza „Wystąpił błąd krytyczny na tej stronie”?
To komunikat WordPressa o błędzie PHP, który zatrzymał ładowanie strony – najczęściej wywołany przez wtyczkę, motyw lub zbyt niski limit pamięci. WordPress wysyła też e-mail wskazujący źródło błędu.
Jak naprawić biały ekran śmierci?
Zwykle wystarczy wyłączyć ostatnio aktualizowaną wtyczkę (przez FTP zmień nazwę jej folderu), zwiększyć limit pamięci PHP albo wrócić do domyślnego motywu. Tryb debugowania wskaże winowajcę.
Dlaczego widzę pusty biały ekran bez żadnego komunikatu?
Bo wyświetlanie błędów jest wyłączone. Włącz WP_DEBUG w pliku wp-config.php albo zajrzyj do logów błędów na hostingu – wtedy zobaczysz, co dokładnie się psuje.
Potrzebujesz pomocy z tym tematem?
MAQ Enterprise zajmie się tym za Ciebie – od jednorazowego audytu po stałą opiekę nad stroną. Zadzwoń: +48 604 790 398 lub napisz.
Napisz do mnie

