+48 506 130 673 info@tosetec.com

W panelu klienta sklepu internetowego na WooCommerce, użytkownicy mają możliwość zarządzania swoimi metodami płatności – np. dodawania kart płatniczych, ustawiania domyślnej formy płatności czy usuwania zapisanych danych.

Czasami jednak podczas próby dodania metody płatności pojawia się następujący błąd:

pgsql
Warning: Trying to access array offset on null in
/wp-content/plugins/woocommerce/includes/class-wc-form-handler.php on line 567

Warning: Trying to access array offset on null in
/wp-content/plugins/woocommerce/includes/class-wc-form-handler.php on line 571

Ten błąd może budzić niepokój – zarówno u właścicieli sklepu internetowego, jak i u klientów. Poniżej wyjaśniamy, co oznacza ten komunikat, dlaczego się pojawia, oraz jak go naprawić lub całkowicie usunąć opcję zarządzania płatnościami z konta klienta.


🔍 Co oznacza ten błąd?

Ten komunikat błędu PHP mówi o próbie odczytania danych z nieistniejącej tablicy (null). Mówiąc prościej:

WooCommerce próbuje uzyskać dane płatności (np. z karty lub bramki płatności), ale tych danych nie ma lub nie zostały poprawnie przekazane.

Najczęstsze przyczyny:

  1. ❌ Brak aktywnej bramki płatności wspierającej przechowywanie metod (np. Stripe, Braintree).

  2. 🧩 Błąd lub niekompatybilność wtyczki płatności.

  3. 🧼 Usunięcie metody płatności z bramki, ale nie z konta użytkownika.

  4. 🔧 Wersja WooCommerce niezgodna z daną bramką płatniczą.


✅ Jak naprawić ten błąd?

1. Zainstaluj lub skonfiguruj poprawnie bramkę płatności

Tylko niektóre bramki płatności obsługują zapisywanie i zarządzanie metodami (np. Stripe, Braintree, PayPal Vault).
Upewnij się, że taka bramka jest:

  • poprawnie skonfigurowana,

  • aktywna,

  • posiada API do zapisu metod.

2. Zaktualizuj swój sklep internetowy na WooCommerce i wtyczki płatności

Błąd może wynikać z niekompatybilności – sprawdź, czy wszystkie wtyczki są zaktualizowane do najnowszych wersji.

3. Usuń lub ukryj sekcję “Metody płatności” z konta klienta

Jeśli nie używasz bramek pozwalających na zapis metod płatności, możesz:

  • ukryć sekcję poprzez filtr w motywie:

php
add_filter( 'woocommerce_account_menu_items', 'usun_metody_platnosci_z_konta' );
function usun_metody_platnosci_z_konta( $items ) {
unset( $items['payment-methods'] );
return $items;
}
  • lub przekierować użytkownika z tej sekcji gdzie indziej.


🧪 Dodatkowa diagnostyka

Jeśli błąd występuje nadal, spróbuj:

  • Włączyć debugowanie WooCommerce → WooCommerce → Ustawienia → Zaawansowane → Logi błędów.

  • Sprawdzić, która wtyczka dokładnie wywołuje problem.

  • Skorzystać z trybu debugowania WordPressa (WP_DEBUG w wp-config.php).


🧾 Podsumowanie

Jeśli klienci próbują dodać metodę płatności w swoim koncie WooCommerce i otrzymują błędy PHP na ekranie, oznacza to najczęściej brak poprawnie skonfigurowanej bramki płatniczej.

Rozwiązaniem może być:

  • instalacja i konfiguracja np. Stripe,

  • aktualizacja wszystkich wtyczek,

  • lub ukrycie całej sekcji z konta klienta, jeśli nie korzystasz z funkcji zapisu płatności.