Po aktualizacji WooCommerce koszyk przestaje działać, znikają płatności albo pojawia się błąd 500. Pierwszy odruch to wyłączenie wszystkich wtyczek. W działającym sklepie taka decyzja może jednak zatrzymać sprzedaż, synchronizację magazynu i fakturowanie. Lepiej zastosować kontrolowaną diagnostykę.
Jak wygląda konflikt wtyczek WooCommerce?
Konflikt może wystąpić pomiędzy dwiema wtyczkami, wtyczką i motywem, rozszerzeniem a wersją PHP lub sposobem przechowywania zamówień. Objawy bywają różne:
- przycisk „Dodaj do koszyka” nie reaguje albo licznik koszyka pokazuje nieprawidłową wartość;
- checkout nie wyświetla metody płatności lub wysyłki;
- rabat nalicza się dwukrotnie albo zmienia po odświeżeniu strony;
- zamówienie powstaje, ale nie trafia do systemu fakturowego;
- panel administracyjny pokazuje błąd krytyczny PHP, a frontend nadal działa;
- funkcja działa na jednej stronie, ale nie w nowym koszyku opartym na blokach.
Nie każdy problem to konflikt. Źródłem może być też błędny cache, zapora WAF, ograniczenie pamięci, niepoprawna konfiguracja sklepu lub awaria usługi zewnętrznej.
Pierwsze 10 minut: zabezpiecz dane i ustal zakres
- Zapisz dokładny adres URL, komunikat błędu i godzinę wystąpienia problemu.
- Sprawdź, co zmieniło się ostatnio: aktualizacja wtyczki, motywu, PHP, reguł cache, klucza API lub konfiguracji płatności.
- Ustal, czy błąd dotyczy wszystkich klientów, konkretnej przeglądarki, jednej metody płatności czy tylko panelu administratora.
- Wykonaj kopię plików i bazy danych. Przy aktywnym sklepie zachowaj szczególną ostrożność z przywracaniem bazy: może ona zawierać nowe zamówienia.
- Jeśli tylko część checkoutu nie działa, rozważ tymczasowe wyłączenie wadliwej funkcji w konfiguracji, zamiast dezaktywacji całej integracji.
Gdzie szukać błędów?
WooCommerce → Status → Logi
To pierwsze miejsce do sprawdzenia błędów związanych z zamówieniami, płatnościami, webhookami i integracjami. Nie wszystkie wtyczki zapisują tutaj dane, ale jeśli log istnieje, pomoże powiązać objawy z konkretnym rozszerzeniem.
Narzędzia deweloperskie przeglądarki
W zakładkach Console i Network sprawdź błędy JavaScript, nieudane żądania do /wp-json/ oraz odpowiedzi HTTP 403, 404, 500 lub 502. Uwaga: odpowiedź HTTP może wskazywać symptom, nie bezpośrednią przyczynę.
Logi PHP oraz tryb odzyskiwania WordPress
Przy błędach krytycznych szukaj komunikatów o brakujących klasach, niezgodnych typach, wyczerpaniu pamięci albo błędach składni. Jeżeli WordPress wysłał e-mail z linkiem do trybu odzyskiwania, wykorzystaj go do identyfikacji problematycznego rozszerzenia. Nie włączaj publicznego wyświetlania szczegółowych błędów w produkcyjnym sklepie.
Test konfliktu krok po kroku na stagingu
- Utwórz staging z kopiami konfiguracji i wersji wtyczek możliwie zbliżonymi do sklepu produkcyjnego. Wyłącz wysyłanie prawdziwych e-maili, płatności i synchronizacji zewnętrznych w kopii.
- Odtwórz błąd i zapisz jego scenariusz, np. „produkt wariantowy → kupon → dostawa → przelew”.
- Wyłącz ostatnio zmieniane rozszerzenie i wykonaj identyczny test. Jeżeli problem zniknie, nie kończ diagnostyki — potwierdź wynik po ponownym włączeniu.
- Gdy to nie pomaga, porównaj konfigurację z możliwie prostym zestawem wtyczek i domyślnym motywem na stagingu. Włączaj rozszerzenia etapami, aby ustalić parę powodującą konflikt.
- Jeśli problem dotyczy zamówień, sprawdź zgodność z HPOS i blokami Cart/Checkout, a także logikę integracji Store API.
- Ostateczne rozwiązanie przetestuj na stagingu, dopiero potem przenieś je na produkcję.
Warto porównać także zachowanie po wyłączeniu cache. WooCommerce korzysta z danych sesji i dynamicznych fragmentów strony, więc agresywne buforowanie koszyka albo checkoutu może dawać objawy przypominające konflikt wtyczek.
Czego nie robić podczas awarii?
- Nie wyłączaj losowo bramek płatności, modułów magazynowych ani synchronizacji zamówień w aktywnym sklepie.
- Nie przywracaj starej bazy danych bez uwzględnienia zamówień przyjętych po wykonaniu kopii.
- Nie instaluj kilku „naprawiaczy” równocześnie — utrudnisz znalezienie pierwotnej przyczyny.
- Nie edytuj bezpośrednio plików rdzenia WordPressa lub WooCommerce, aby zamaskować błąd.
- Nie uznawaj problemu za rozwiązany tylko dlatego, że jedna testowa strona się otwiera.
Po naprawie: test regresyjny
Sprawdź minimum: stronę produktu, koszyk, rabat, dane klienta, metodę dostawy, metodę płatności, utworzenie zamówienia, zmianę statusu, e-mail transakcyjny i współpracę z systemem zewnętrznym. Jeżeli sklep działa w wielu walutach, językach lub ma produkty wariantowe, uwzględnij te przypadki. Dokumentuj wersję rozszerzenia, na której problem zniknął.
FAQ
Czy konflikt może pojawić się bez aktualizacji?
Tak. Wystarczy zmiana konfiguracji API, limitu serwera, zewnętrznego zasobu albo zaplanowane zadanie uruchamiające rzadko używany kod.
Czy wystarczy usunąć i zainstalować wtyczkę ponownie?
Nie zawsze. Niektóre rozszerzenia przechowują ustawienia w bazie. Ponowna instalacja bez diagnozy może nie usunąć przyczyny, a przy okazji usunąć ważne dane.
Czy należy zgłosić konflikt twórcy wtyczki?
Tak, z dokładnymi wersjami WordPressa, WooCommerce i PHP, opisem kroków reprodukcji, fragmentem logów bez danych klientów oraz wynikiem testów na stagingu.
Więcej: WooCommerce nie działa po aktualizacji — plan naprawy, bezpieczne aktualizacje WordPress oraz checklista QA WooCommerce.
Źródło techniczne: WooCommerce — testowanie konfliktów motywów i wtyczek.
