Biały ekran śmierci w WordPressie: jak odczytać błąd przed naprawą

Państwa strona wyświetla pusty ekran albo zdanie „W witrynie wystąpił błąd krytyczny.” W obu przypadkach PHP zapisał gdzieś dokładny komunikat, który wskazuje winny plik. Ten poradnik pokazuje, gdzie go przeczytać, jak go zinterpretować i jaki krok odpowiada każdemu komunikatowi.

Opublikowano 1 października 2026 Czas czytania: 9 minut

Wszystkie poradniki

W skrócie

  1. Proszę otworzyć skrzynkę e-mail administratora strony: WordPress wysyła tam link, który otwiera panel mimo błędu.
  2. Jeśli tego e-maila nie ma, proszę włączyć dziennik debugowania w wp-config.php i ponownie załadować stronę z błędem.
  3. Proszę przeczytać wiersz PHP Fatal error w wp-content/debug.log: ścieżka pliku wskazuje winną wtyczkę lub motyw.
  4. Proszę wyłączyć tylko ten składnik, zmieniając nazwę jego katalogu albo przez WP-CLI.
  5. Jeśli komunikat mówi o pamięci lub wersji PHP, zmiany dokonuje się w konfiguracji strony lub u firmy hostingowej.
  6. Gdy strona wróci, proszę wyłączyć dziennik i usunąć debug.log.

„Błąd krytyczny” czy biały ekran: ta sama awaria

Biały ekran to najczęściej błąd krytyczny PHP (fatal error): plik strony zażądał czegoś niemożliwego i wykonanie zatrzymało się, zanim cokolwiek zostało wyświetlone. Od wersji 5.2 WordPress przechwytuje te błędy: zamiast pustej strony wyświetla „W witrynie wystąpił błąd krytyczny.” i wysyła e-mail na administracyjny adres e-mail strony.

Strona pozostaje całkiem biała w kilku przypadkach: starsza wersja WordPressa, błąd, który wystąpił przed załadowaniem tego mechanizmu, stała WP_DISABLE_FATAL_ERROR_HANDLER ustawiona na true albo wtyczka pamięci podręcznej, która serwuje pustą stronę zapisaną w czasie awarii. Poniższa metoda działa we wszystkich tych przypadkach.

Trzy kroki mogą poczekać, aż błąd zostanie odczytany: ponowna instalacja WordPressa, usuwanie wtyczek, przywracanie starej kopii zapasowej. Każdy z nich może usunąć ustawienia lub świeże dane, a komunikat o błędzie zwykle wskazuje, który składnik wyłączyć, bez żadnej straty.

Skrót: tryb awaryjny

Gdy WordPress przechwyci błąd, wysyła na administracyjny adres e-mail strony wiadomość z tematem „[Nazwa witryny] Twoja witryna ma problemy techniczne”. Wskazuje ona winną wtyczkę lub motyw i zawiera link, który otwiera panel w trybie awaryjnym.

Odczytać błąd: dziennik debugowania

Proszę połączyć się ze stroną przez SFTP lub menedżer plików firmy hostingowej, otworzyć wp-config.php w katalogu głównym i zastąpić wiersz define( 'WP_DEBUG', false ); tymi czterema wierszami:

wp-config.php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Wstawia się je nad komentarzem, który zamyka edytowalną część pliku (/* That's all, stop editing! Happy publishing. */, po angielsku również w WordPressie zainstalowanym w języku polskim). Następnie proszę ponownie załadować stronę z błędem i otworzyć wp-content/debug.log. WP_DEBUG_DISPLAY ustawione na false zatrzymuje komunikaty w pliku, poza stroną, którą widzą odwiedzający.

Jeśli debug.log pozostaje pusty lub się nie pojawia, błąd zapisał bezpośrednio PHP: proszę poszukać pliku error_log w katalogu głównym strony lub w wp-admin albo sekcji logów błędów w panelu firmy hostingowej.

Co mówi komunikat i jaki krok mu odpowiada

Błąd krytyczny mieści się w jednym wierszu: typ błędu, jego opis, potem in i pełna ścieżka pliku oraz numer wiersza. Ścieżka to najcenniejsza informacja: wp-content/plugins/nazwa/ wskazuje wtyczkę, wp-content/themes/nazwa/ motyw.

Komunikat zawieraCo to oznaczaKrok
Call to undefined function lub Class "…" not found, w wp-content/plugins/nazwa-wtyczki/Wtyczka wywołuje kod, którego brakuje: niepełna aktualizacja, wyłączona wtyczka, od której zależy, lub wersja PHP, której nie obsługuje.Wyłączyć tę wtyczkę, a potem zainstalować ją ponownie lub zaktualizować.
Allowed memory size of 268435456 bytes exhaustedSkrypt przekroczył pamięć przydzieloną PHP, tutaj 268 435 456 bajtów, czyli 256 MB.Podnieść WP_MEMORY_LIMIT w wp-config.php, w granicach limitu ustalonego przez firmę hostingową, a potem sprawdzić, co zużywa tyle pamięci.
PHP Parse error: syntax error, unexpected, w functions.php on line 42Błąd składni w pliku, bardzo często po ręcznej zmianie w edytorze motywu.Poprawić wskazany wiersz albo przywrócić poprzednią wersję pliku.
Uncaught TypeError lub Uncaught ArgumentCountError, po zmianie wersji PHPSkładnik napisany dla starszej wersji PHP, którego obecna wersja nie chce wykonać.Zaktualizować składnik. Doraźnie można wrócić do poprzedniej wersji PHP w panelu firmy hostingowej, do czasu jego wymiany.
Maximum execution time of 30 seconds exceededOperacja przekroczyła czas dozwolony przez PHP (max_execution_time).Ustalić, jaka to operacja (import, kopia zapasowa, generowanie obrazów), i podnieść limit u firmy hostingowej, jeśli operacja jest zasadna.
wp-config.php, aby podnieść pamięć przydzieloną WordPressowi
define( 'WP_MEMORY_LIMIT', '256M' );

Wyłączyć winny składnik bez panelu administracyjnego

Przez SFTP lub menedżer plików

Proszę zmienić nazwę katalogu wtyczki wskazanej w komunikacie, na przykład wp-content/plugins/nazwa-wtyczki na nazwa-wtyczki.off. WordPress nie znajduje już wtyczki i przestaje ją ładować; jej ustawienia pozostają zapisane w bazie danych, a WordPress wyłącza ją przy następnym otwarciu ekranu wtyczek.

W przypadku motywu zmiana nazwy jego katalogu w wp-content/themes przywraca dostęp do panelu, ale odwiedzający widzą pustą stronę, dopóki żaden motyw nie jest aktywny. Proszę od razu otworzyć Wygląd > Motywy: WordPress stwierdza, że aktywny motyw jest uszkodzony, i wraca do zainstalowanego motywu domyślnego.

Przez WP-CLI

Terminal, w katalogu głównym strony (motyw do włączenia musi być na liście wp theme list)
wp plugin list --status=active
wp plugin deactivate nazwa-wtyczki
wp theme list
wp theme activate twentytwentyfive

Pierwsze polecenie zachowuje listę aktywnych wtyczek, przydatną przed zbiorczym wyłączeniem. Jeśli samo WP-CLI zatrzymuje się na błędzie, proszę dodać do polecenia --skip-plugins --skip-themes: uruchomi się wtedy bez ładowania wtyczek i motywu. Wtyczki z katalogu wp-content/mu-plugins ładują się mimo to; jeśli błąd pochodzi z jednej z nich, proszę zmienić nazwę jej pliku.

Gdy komunikat nie wskazuje żadnego składnika, wp plugin deactivate --all wyłącza wszystkie wtyczki. Jeśli strona wróci, proszę włączać je po kolei, odświeżając stronę po każdej: ostatnia włączona przed powrotem błędu jest tą właściwą.

Gdy strona wróci

  1. Proszę przywrócić define( 'WP_DEBUG', false ); i usunąć WP_DEBUG_LOG z wp-config.php.
  2. Proszę usunąć wp-content/debug.log: w katalogu dostępnym z internetu może go przeczytać każdy, a zawiera ścieżki serwera.
  3. Proszę zaktualizować lub wymienić winny składnik, czytając jego listę zmian.
  4. Proszę wyczyścić pamięć podręczną wtyczki cache oraz pamięć podręczną firmy hostingowej, jeśli ją ma.
  5. Na przyszłość: aktualizacje warto testować na kopii strony, zanim trafią na stronę działającą online.

Strona, której aktualizacje to nasza praca

Z Serenity by Simafri tworzymy Państwa profesjonalną stronę internetową, hostujemy ją, zabezpieczamy i utrzymujemy aktualną. Państwo piszą do nas, my zajmujemy się wszystkim. Nazwa domeny i poczta firmowa w cenie.

Poznaj Serenity by Simafri

Częste pytania

Dlaczego moja strona WordPress wyświetla „W witrynie wystąpił błąd krytyczny”?

Ponieważ wystąpił błąd krytyczny PHP, najczęściej we wtyczce lub motywie. WordPress go przechwytuje, wyświetla ten komunikat i wysyła e-mail na administracyjny adres e-mail strony, z linkiem do trybu awaryjnego. Dziennik debugowania podaje szczegóły błędu i winny plik.

E-mail z linkiem do trybu awaryjnego nie dotarł. Co zrobić?

Proszę sprawdzić folder spamu oraz pole Administracyjny adres e-mail w Ustawienia > Ogólne. Bez e-maila proszę włączyć dziennik debugowania w wp-config.php, odczytać błąd w wp-content/debug.log, a potem wyłączyć winny składnik, zmieniając nazwę jego katalogu przez SFTP.

Czy zmiana nazwy katalogu wtyczki usuwa jej ustawienia?

Nie. Ustawienia wtyczek są zapisane w bazie danych, a nie w ich katalogu. Wtyczka o zmienionej nazwie jest widoczna jako wyłączona; po przywróceniu pierwotnej nazwy i ponownym włączeniu na ekranie wtyczek wraca z ustawieniami.

Biały ekran pojawia się tylko w panelu administracyjnym. Dlaczego?

Wadliwy składnik ładuje się tylko w panelu albo potrzebuje tam więcej pamięci. WordPress stosuje WP_MAX_MEMORY_LIMIT do ekranów administracyjnych, a WP_MEMORY_LIMIT do publicznej części strony. Dziennik debugowania daje tę samą informację w obu przypadkach: proszę załadować stronę panelu z błędem, a potem przeczytać debug.log.

Skontaktuj się z nami