@transferujpl, za spraw? przerwy urlopowej nie mam mo?liwo?ci wgry?? si? g??biej w problem. Pocz?tkowo równie? nie mog?em go zreplikowa? – teraz z grubsza wiem w czym rzecz.
Problemem s? pozosta?o?ci, przestarza?e opcje wysy?ki jakie by?y w WP < 2.6.
W przypadku z jakim si? spotka?em, pomimo aktualnej wersji WC i poprawnie skonfigurowanych Stref Wysy?ki, wisia?a jeszcze stara opcja “Odbiór osobisty (przestarza?a)” – czyli aby zreplikowa? problem, nale?a?o by np. pod wersj? WC 2.5.5 ustawi? opcje wysy?ki, nast?pnie zaktualizowa? WC. B?d? r?cznie w tabeli wp_options wyedytowa? opcj? woocommerce_local_pickup_settings i zmieni? jej warto?? enabled na yes (uwaga na serializacj?).
W momencie, gdy stara opcja jest aktywna, a Woo prze??czy si? w tryb legacy, wtyczka zaczyna si? wyk?ada? rzucaj?c fatalem jak w przyk?adach powy?ej.
Z braku czasu nie wnika?em, co dok?adniej w trybie legacy tam si? wyprawia z zale?no?ciami, niemniej ?atka jak? pierwotnie poda?em w omawianym przypadku –
dodanie if( ! isset( WC()->customer ) ) return;
w tpayWoocommerceGateway.php, po 547 ln., czyli za if (class_exists('WC_Shipping')) {
– dora?nie rozwi?zywa?a problem. Wtyczka wraca?a do ?ycia, nie rzuca?a ju? fatala i dzia?a?a raczej poprawnie.
Zatem docelowo wystarczy wy??czy? przestarza?e opcje wysy?ki. Ale warto by mimo wszystko zabezpieczy?, by tryb zgodno?ci nie wyk?ada? tutaj wtyczki.