Błąd krytyczny w WooCommerce - jak zdiagnozować biały ekran po aktualizacji

Technical Implementation Expert
Błąd krytyczny w WooCommerce - jak zdiagnozować biały ekran po aktualizacji

Błąd krytyczny w WooCommerce, czyli komunikat „W witrynie wystąpił błąd krytyczny” albo pusty, biały ekran po aktualizacji, to prawie zawsze błąd PHP we wtyczce, motywie lub własnym kodzie, który przestał współpracować z nową wersją WordPressa, WooCommerce albo PHP. Diagnozę zaczynasz od e-maila z linkiem do trybu awaryjnego, logu fatal-errors w WooCommerce i pliku debug.log, a sklep przywracasz, wyłączając winny dodatek albo cofając zmianę z kopii zapasowej.
Biały ekran w sklepie to stres, bo każda minuta to klienci, którzy nie mogą dodać produktu do koszyka ani zapłacić. Dobra wiadomość jest taka, że w większości przypadków przyczynę da się znaleźć w kilkanaście minut, jeśli wiesz, gdzie patrzeć. W tym wpisie pokazujemy, skąd bierze się błąd krytyczny, gdzie WordPress i WooCommerce zapisują jego szczegóły, jak przejść przez diagnozę krok po kroku i jak ograniczyć ryzyko, że kolejna aktualizacja znowu wyłączy sklep.
[#wazne] W skrócie: błąd krytyczny w WooCommerce to błąd PHP, który przerywa ładowanie strony. Od WordPressa 5.2 zamiast samego białego ekranu działa tryb awaryjny: administrator dostaje e-mail z linkiem, po którym loguje się do panelu z wstrzymaną wadliwą wtyczką lub motywem. Szczegóły błędu znajdziesz w logu fatal-errors WooCommerce i w pliku debug.log. W Vinson budujemy i rozwijamy sklepy na WooCommerce oraz integrujemy je z Allegro i Base, a aktualizacje robimy po testach na kopii sklepu.
Czym jest błąd krytyczny w WooCommerce
Błąd krytyczny (fatal error) to błąd PHP, po którym serwer przerywa generowanie strony. Kod nie może iść dalej, bo np. wywołuje funkcję, której już nie ma, odwołuje się do klasy z innej wersji wtyczki albo przekracza limit pamięci. Dawniej kończyło się to pustą stroną, nazywaną białym ekranem śmierci (White Screen of Death). Dziś WordPress zwykle pokazuje odwiedzającym komunikat „W witrynie wystąpił błąd krytyczny.” z odnośnikiem do porad, a w tle uruchamia mechanizm ochrony przed takimi błędami.
Według dokumentacji WordPressa tryb awaryjny (Recovery Mode) został wprowadzony w wersji 5.2. Włącza się automatycznie, gdy WordPress wykryje błąd krytyczny PHP podczas zwykłego ładowania strony. Nie zadziała przy błędach w zadaniach cron i innych procesach w tle. Wtedy na stronie widać komunikat o problemach technicznych, a na adres e-mail administratora trafia wiadomość ze szczegółami błędu i specjalnym odnośnikiem do logowania.
Najczęstsze przyczyny białego ekranu po aktualizacji
Błąd krytyczny rzadko pojawia się bez powodu. Najczęściej poprzedza go jakaś zmiana w sklepie lub na serwerze. Gdy pojawia się po aktualizacji, przyczyna zwykle leży w jednym z tych obszarów:
Wtyczka niezgodna z nową wersją WooCommerce - dodatek korzysta z funkcji lub klas, które w nowej wersji zmieniły się albo zniknęły.
Motyw z własnym kodem - kod w pliku functions.php albo nadpisane szablony WooCommerce, które nie nadążają za zmianami.
Zmiana wersji PHP na serwerze - hosting podniósł PHP, a starsza wtyczka używa składni, która w nowej wersji nie działa.
Przerwana aktualizacja - część plików wtyczki zdążyła się podmienić, a część nie, np. przez limit czasu na serwerze.
Brak pamięci - nowa wersja dodatku potrzebuje więcej pamięci, niż pozwala limit ustawiony dla WordPressa.
Własny fragment kodu - snippet dodany kiedyś „na szybko”, który odwołuje się do funkcji usuniętej w nowej wersji.
Dlatego pierwsze pytanie przy białym ekranie brzmi: co zmieniło się w sklepie w ostatnich godzinach? Zapisz, które wtyczki, motyw lub wersję PHP aktualizowano, kto to zrobił i o której. Sprawdź też, czy hosting nie przeprowadzał prac na serwerze. Taka notatka często skraca diagnozę do kilku minut, bo od razu wskazuje podejrzanego.
Gdzie szukać przyczyny błędu krytycznego w WooCommerce
Komunikat na ekranie niewiele mówi o przyczynie. Konkrety, czyli nazwę pliku, numer linii i wtyczkę, z której pochodzi błąd, znajdziesz w kilku miejscach. Warto znać je wszystkie, bo w zależności od sytuacji nie każde będzie dostępne:
[#chart:woo74a]
Najszybszym źródłem jest zwykle e-mail z trybu awaryjnego, ale nie zawsze dociera. Dokumentacja WordPressa wyjaśnia, że wtyczki ładują się w ustalonej kolejności. Jeśli sklep wysyła e-maile przez wtyczkę SMTP, a błąd pojawi się, zanim ta wtyczka się załaduje, wiadomość wyjdzie bezpośrednio z serwera. Gdy serwer nie ma poprawnie skonfigurowanej poczty, e-mail może trafić do spamu albo nie dotrzeć wcale. Dlatego przy białym ekranie zawsze sprawdź też folder spamu na adresie administratora i od razu przejdź do logów.
- Przegląd sklepu, wtyczek i wydajności
- Płatności, wysyłki i integracje
- Plan rozwoju sklepu
Konsultację poprowadzi Łukasz Palej, Technical Implementation Expert

Łukasz Palej
Technical Implementation Expert
Sklep na WooCommerce z Vinson
Łukasz i nasz zespół pomogą Ci wdrożyć to na Twoim koncie - bez zobowiązań.
- Analiza Twojego konta i obecnych działań
- Konkretny plan poprawek do wdrożenia
- Bezpłatna konsultacja – bez zobowiązań

Przeczytaj także
Więcej porad z naszej bazy wiedzy - przesuń, aby zobaczyć kolejne artykuły.
Wybierz dogodny termin w kalendarzu - bez wymiany maili w tę i z powrotem.
