{"id":90024,"date":"2026-10-05T09:00:00","date_gmt":"2026-10-05T07:00:00","guid":{"rendered":"https:\/\/codescriptum.pl\/blog\/100-problemow-woocommerce\/"},"modified":"2026-10-05T13:04:46","modified_gmt":"2026-10-05T11:04:46","slug":"100-problemow-woocommerce","status":"publish","type":"post","link":"https:\/\/codescriptum.pl\/blog\/100-problemow-woocommerce\/","title":{"rendered":"100 problem\u00f3w z WooCommerce i jak je rozwi\u0105za\u0107 (2026)"},"content":{"rendered":"<p>WooCommerce nap\u0119dza du\u017c\u0105 cz\u0119\u015b\u0107 sklep\u00f3w internetowych w Polsce: jest darmowy, elastyczny i dzia\u0142a na WordPressie. Ta elastyczno\u015b\u0107 ma jednak cen\u0119. Ka\u017cdy sklep to inna kombinacja hostingu, motywu, wtyczek p\u0142atno\u015bci, wysy\u0142ki i integracji, wi\u0119c problemy pojawiaj\u0105 si\u0119 w r\u00f3\u017cnych miejscach. Zebrali\u015bmy 100 sytuacji, z kt\u00f3rymi w\u0142a\u015bciciele sklep\u00f3w zg\u0142aszaj\u0105 si\u0119 do nas najcz\u0119\u015bciej, i przy ka\u017cdej opisali\u015bmy, sk\u0105d si\u0119 bierze i jak j\u0105 rozwi\u0105za\u0107.<\/p>\n<p>Lista jest podzielona na 10 grup. Je\u015bli szukasz konkretnego objawu, u\u017cyj spisu tre\u015bci albo wyszukiwania w przegl\u0105darce (Ctrl+F). Zanim cokolwiek zmienisz w dzia\u0142aj\u0105cym sklepie, zr\u00f3b kopi\u0119 zapasow\u0105 plik\u00f3w i bazy danych, a wi\u0119ksze zmiany testuj na kopii sklepu (\u015brodowisku testowym).<\/p>\n<h2>Instalacja, hosting i konfiguracja<\/h2>\n<p>Najwi\u0119cej k\u0142opot\u00f3w zaczyna si\u0119 od fundament\u00f3w: serwera, wersji PHP i podstawowych ustawie\u0144 sklepu.<\/p>\n<h3>1. Sklep WooCommerce dzia\u0142a wolno od pierwszego dnia<\/h3>\n<p>Najcz\u0119\u015bciej winny jest zbyt s\u0142aby hosting wsp\u00f3\u0142dzielony: ma\u0142y limit pami\u0119ci PHP, stara wersja PHP i brak cache po stronie serwera. WooCommerce przy ka\u017cdym wej\u015bciu do koszyka, zam\u00f3wienia i konta wykonuje wiele zapyta\u0144 do bazy, kt\u00f3rych nie da si\u0119 zapisa\u0107 w cache stron. Rozpoznasz to po tym, \u017ce wolny jest tak\u017ce panel administracyjny, a PageSpeed Insights pokazuje d\u0142ugi czas odpowiedzi serwera (TTFB).<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przenie\u015b sklep na hosting z PHP 8.x, OPcache i cache obiekt\u00f3w (Redis lub Memcached) oraz limitem pami\u0119ci PHP co najmniej 256 MB. Dopiero potem optymalizuj motyw, zdj\u0119cia i wtyczki.<\/p>\n<h3>2. Bia\u0142y ekran albo \u201eb\u0142\u0105d krytyczny\u201d po aktualizacji WooCommerce<\/h3>\n<p>Przyczyn\u0105 jest prawie zawsze wtyczka lub motyw niezgodne z now\u0105 wersj\u0105 WooCommerce, WordPressa albo PHP. WordPress wysy\u0142a wtedy na adres administratora maila z linkiem do trybu odzyskiwania i nazw\u0105 wtyczki, kt\u00f3ra spowodowa\u0142a b\u0142\u0105d. Je\u015bli maila nie ma, przyczyn\u0119 poka\u017ce log b\u0142\u0119d\u00f3w.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wejd\u017a przez link z maila albo zmie\u0144 przez FTP nazw\u0119 folderu podejrzanej wtyczki w wp-content\/plugins, w\u0142\u0105cz WP_DEBUG_LOG i sprawd\u017a plik debug.log. Kolejne aktualizacje r\u00f3b najpierw na kopii sklepu, z kopi\u0105 zapasow\u0105 przed ka\u017cd\u0105 zmian\u0105.<\/p>\n<h3>3. WooCommerce pokazuje komunikat o zbyt starej wersji PHP<\/h3>\n<p>Komunikat oznacza, \u017ce serwer dzia\u0142a na wersji PHP, kt\u00f3rej nie wspiera ju\u017c WooCommerce albo kt\u00f3ra\u015b z wtyczek, najcz\u0119\u015bciej p\u0142atno\u015bci. Stare PHP nie dostaje poprawek bezpiecze\u0144stwa i jest wolniejsze od nowszych wersji. Aktualn\u0105 wersj\u0119 sprawdzisz w WooCommerce, Status, Status systemu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zmie\u0144 wersj\u0119 PHP w panelu hostingu na wspieran\u0105 wersj\u0119 8.x. Wcze\u015bniej zr\u00f3b kopi\u0119 zapasow\u0105 i sprawd\u017a na kopii sklepu, czy motyw i wtyczki dzia\u0142aj\u0105 bez b\u0142\u0119d\u00f3w, bo starszy kod bywa niezgodny z PHP 8.<\/p>\n<h3>4. Przegl\u0105darka pokazuje \u201eNiezabezpieczona\u201d albo ostrze\u017cenie o tre\u015bci mieszanej<\/h3>\n<p>Sklep nie ma certyfikatu SSL albo cz\u0119\u015b\u0107 plik\u00f3w (obrazki, skrypty) nadal \u0142aduje si\u0119 przez http. Bez HTTPS przegl\u0105darka oznacza stron\u0119 jako niebezpieczn\u0105, klienci rezygnuj\u0105 z zakupu, a bramki p\u0142atno\u015bci mog\u0105 odm\u00f3wi\u0107 dzia\u0142ania. Tre\u015b\u0107 mieszan\u0105 poka\u017ce konsola przegl\u0105darki (F12) i ikona przy pasku adresu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w\u0142\u0105cz darmowy certyfikat (np. Let's Encrypt) w panelu hostingu, ustaw adres WordPressa i witryny na https w Ustawieniach og\u00f3lnych, a stare adresy http w bazie zamie\u0144 narz\u0119dziem do wyszukiwania i zamiany. Dodaj przekierowanie 301 z http na https.<\/p>\n<h3>5. Strona Koszyk, Zam\u00f3wienie lub Moje konto daje b\u0142\u0105d 404<\/h3>\n<p>WooCommerce straci\u0142 przypisanie do tych stron: zosta\u0142y usuni\u0119te, przeniesione do kosza albo zmieniono ich adresy. Przyczyn\u0105 bywaj\u0105 te\u017c nieod\u015bwie\u017cone regu\u0142y bezpo\u015brednich odno\u015bnik\u00f3w po migracji lub zmianie motywu. Rozpoznasz to po tym, \u017ce przycisk \u201ePrzejd\u017a do koszyka\u201d prowadzi do b\u0142\u0119du albo na stron\u0119 g\u0142\u00f3wn\u0105.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Zaawansowane przypisz w\u0142a\u015bciwe strony koszyka, zam\u00f3wienia i konta (w razie potrzeby utw\u00f3rz je ponownie). Nast\u0119pnie wejd\u017a w Ustawienia, Bezpo\u015brednie odno\u015bniki i kliknij Zapisz, niczego nie zmieniaj\u0105c.<\/p>\n<h3>6. Ceny w WooCommerce maj\u0105 kropk\u0119 zamiast przecinka albo z\u0142\u0105 walut\u0119<\/h3>\n<p>Domy\u015blne ustawienia WooCommerce s\u0105 przygotowane pod rynek angloj\u0119zyczny, wi\u0119c cena mo\u017ce wygl\u0105da\u0107 np. jak \u201ez\u01421,234.50\u201d. To drobiazg, ale obni\u017ca zaufanie i bywa \u017ale odczytywany przez klient\u00f3w. Format cen ustawia si\u0119 raz dla ca\u0142ego sklepu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Og\u00f3lne wybierz walut\u0119 z\u0142oty polski (PLN), pozycj\u0119 symbolu po prawej ze spacj\u0105, spacj\u0119 jako separator tysi\u0119cy, przecinek jako separator dziesi\u0119tny i dwa miejsca po przecinku. Potem sprawd\u017a kart\u0119 produktu, koszyk i maile.<\/p>\n<h3>7. Ceny brutto i netto w sklepie si\u0119 nie zgadzaj\u0105<\/h3>\n<p>Przyczyn\u0105 jest niesp\u00f3jne ustawienie podatku: ceny wpisane jako brutto, a sklep traktuje je jak netto (albo odwrotnie), lub brakuje stawek dla Polski. Skutek to r\u00f3\u017cne kwoty na karcie produktu, w koszyku i na dokumencie sprzeda\u017cy. Klientom indywidualnym sklep musi pokazywa\u0107 cen\u0119 ko\u0144cow\u0105, z podatkiem.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Podatek zdecyduj, czy wpisujesz ceny z podatkiem (zwykle tak), dodaj stawki dla Polski i ustaw wy\u015bwietlanie cen z podatkiem w sklepie i koszyku. Przetestuj zam\u00f3wienie z rabatem i dostaw\u0105.<\/p>\n<h3>8. Klienci nie dostaj\u0105 maili z potwierdzeniem zam\u00f3wienia<\/h3>\n<p>Najcz\u0119stsza przyczyna to wysy\u0142ka maili funkcj\u0105 serwera (PHP mail), bez uwierzytelnienia, przez co wiadomo\u015bci trafiaj\u0105 do spamu albo s\u0105 odrzucane. Brak rekord\u00f3w SPF, DKIM i DMARC w domenie pogarsza spraw\u0119. Rozpoznasz to po tym, \u017ce zam\u00f3wienia s\u0105 w panelu, a klienci pisz\u0105, \u017ce nie dostali potwierdzenia.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> skonfiguruj wysy\u0142k\u0119 przez SMTP (skrzynka firmowa albo us\u0142uga maili transakcyjnych) wtyczk\u0105 SMTP, dodaj w DNS rekordy SPF, DKIM i DMARC i wy\u015blij testow\u0105 wiadomo\u015b\u0107. Sprawd\u017a te\u017c w WooCommerce, Ustawienia, E-maile, czy powiadomienia s\u0105 w\u0142\u0105czone.<\/p>\n<h3>9. Godzina zam\u00f3wie\u0144 w WooCommerce jest przesuni\u0119ta o godzin\u0119 lub dwie<\/h3>\n<p>Strefa czasowa WordPressa jest ustawiona jako przesuni\u0119cie UTC (np. UTC+1), a nie jako miasto. Takie ustawienie nie uwzgl\u0119dnia zmiany czasu letniego i zimowego, wi\u0119c godziny zam\u00f3wie\u0144, promocji i zaplanowanych wpis\u00f3w rozje\u017cd\u017caj\u0105 si\u0119 dwa razy w roku. Najcz\u0119\u015bciej wida\u0107 to przy promocjach, kt\u00f3re startuj\u0105 o z\u0142ej godzinie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w Ustawieniach, Og\u00f3lne wybierz stref\u0119 czasow\u0105 \u201eWarszawa\u201d zamiast przesuni\u0119cia UTC i zapisz. Sprawd\u017a te\u017c daty zaplanowanych promocji i kupon\u00f3w, bo mog\u0142y zosta\u0107 ustawione wed\u0142ug z\u0142ej godziny.<\/p>\n<h3>10. Sklep ma kilkadziesi\u0105t wtyczek i nikt nie wie, kt\u00f3re s\u0105 potrzebne<\/h3>\n<p>Wtyczki dok\u0142ada si\u0119 latami do pojedynczych zada\u0144 i nikt ich potem nie usuwa. Ka\u017cda to dodatkowy kod \u0142adowany na stronie, ryzyko konfliktu przy aktualizacji i potencjalna luka bezpiecze\u0144stwa. Objawy to wolny panel, b\u0142\u0119dy po aktualizacjach i zdublowane funkcje, np. dwie wtyczki SEO naraz.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zr\u00f3b list\u0119 wtyczek z opisem, do czego s\u0142u\u017c\u0105 i kto ich u\u017cywa. Usu\u0144 nieu\u017cywane, zdublowane zast\u0105p jedn\u0105 sprawdzon\u0105, a drobne poprawki przenie\u015b do kodu w motywie potomnym. Ka\u017cd\u0105 zmian\u0119 testuj na kopii sklepu.<\/p>\n<h2>Produkty, warianty i katalog<\/h2>\n<p>Problemy z produktami wida\u0107 od razu w sprzeda\u017cy: klient nie mo\u017ce wybra\u0107 wariantu, nie widzi zdj\u0119cia albo trafia na produkt, kt\u00f3rego nie ma.<\/p>\n<h3>11. Nie mo\u017cna wybra\u0107 wariantu produktu albo cena si\u0119 nie zmienia<\/h3>\n<p>Najcz\u0119\u015bciej jedna z odmian nie ma ceny, stanu magazynowego albo jest wy\u0142\u0105czona, a WooCommerce ukrywa takie kombinacje. Drug\u0105 przyczyn\u0105 jest atrybut bez zaznaczonej opcji \u201eU\u017cywane do wariant\u00f3w\u201d. Klient wybiera kolor i rozmiar, a przycisk \u201eDodaj do koszyka\u201d pozostaje nieaktywny albo pojawia si\u0119 komunikat o niedost\u0119pno\u015bci.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w edycji produktu otw\u00f3rz zak\u0142adk\u0119 Warianty i sprawd\u017a ka\u017cd\u0105 odmian\u0119: cen\u0119, stan i zaznaczenie \u201eW\u0142\u0105czone\u201d. W zak\u0142adce Atrybuty upewnij si\u0119, \u017ce atrybut jest u\u017cywany do wariant\u00f3w, i zapisz produkt.<\/p>\n<h3>12. Produkt z du\u017c\u0105 liczb\u0105 wariant\u00f3w \u0142aduje si\u0119 bardzo wolno<\/h3>\n<p>Przy du\u017cej liczbie odmian WooCommerce nie do\u0142\u0105cza do strony danych wszystkich wariant\u00f3w i sprawdza dost\u0119pno\u015b\u0107 kombinacji osobnymi zapytaniami po ka\u017cdym wyborze klienta. Ka\u017cda odmiana to te\u017c osobny wpis w bazie, wi\u0119c edycja i zapis produktu trwaj\u0105 d\u0142ugo. Wyb\u00f3r rozmiaru reaguje z op\u00f3\u017anieniem, a panel si\u0119 zawiesza.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ogranicz liczb\u0119 kombinacji, np. kolory jako osobne, po\u0142\u0105czone ze sob\u0105 produkty, a rozmiary jako warianty. Przy du\u017cych katalogach u\u017cyj wtyczki do tabeli wariant\u00f3w albo rozwi\u0105zania dedykowanego.<\/p>\n<h3>13. Zdj\u0119cia produkt\u00f3w s\u0105 rozmazane albo przyci\u0119te<\/h3>\n<p>Rozmiary miniatur ustawione w motywie nie pasuj\u0105 do proporcji wgrywanych zdj\u0119\u0107 albo zdj\u0119cia s\u0105 mniejsze ni\u017c miniatury, wi\u0119c przegl\u0105darka je rozci\u0105ga. Problem pojawia si\u0119 zwykle po zmianie motywu, bo stare miniatury zosta\u0142y wygenerowane pod poprzednie wymiary. Wida\u0107 uci\u0119te kraw\u0119dzie produkt\u00f3w na li\u015bcie i rozmyte zdj\u0119cie na karcie produktu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw jednolite proporcje zdj\u0119\u0107 (np. kwadrat 1:1) i wybierz przycinanie w Wygl\u0105d, Dostosuj, WooCommerce, Obrazki produkt\u00f3w. Potem wygeneruj miniatury ponownie wtyczk\u0105 do regeneracji miniatur.<\/p>\n<h3>14. Zdj\u0119cia produkt\u00f3w s\u0105 ci\u0119\u017ckie i spowalniaj\u0105 sklep<\/h3>\n<p>Zdj\u0119cia wgrywane s\u0105 prosto z aparatu lub telefonu, po kilka megabajt\u00f3w i kilka tysi\u0119cy pikseli szeroko\u015bci. Na li\u015bcie produkt\u00f3w przegl\u0105darka pobiera kilkana\u015bcie takich plik\u00f3w, co wyd\u0142u\u017ca \u0142adowanie, szczeg\u00f3lnie na telefonie. PageSpeed Insights pokazuje wtedy uwagi o rozmiarze obraz\u00f3w i s\u0142aby wynik LCP.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zmniejszaj zdj\u0119cia przed wgraniem do ok. 2000 px d\u0142u\u017cszego boku, konwertuj je do WebP lub AVIF i w\u0142\u0105cz leniwe \u0142adowanie obrazk\u00f3w poni\u017cej pierwszego ekranu. G\u0142\u00f3wne zdj\u0119cie produktu \u0142aduj bez op\u00f3\u017anienia.<\/p>\n<h3>15. Klient kupi\u0142 produkt, kt\u00f3rego nie ma w magazynie<\/h3>\n<p>W produkcie wy\u0142\u0105czone jest zarz\u0105dzanie stanem magazynowym albo stany nie s\u0105 synchronizowane z magazynem, hurtowni\u0105 lub marketplace. Sklep pokazuje wtedy produkt jako dost\u0119pny, mimo \u017ce fizycznie go nie ma. Problem nasila si\u0119 przy sprzeda\u017cy w kilku kana\u0142ach naraz.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w\u0142\u0105cz zarz\u0105dzanie stanem w WooCommerce, Ustawienia, Produkty, Magazyn oraz w ka\u017cdym produkcie i nie zezwalaj na zam\u00f3wienia przy stanie zero. Przy kilku kana\u0142ach sprzeda\u017cy ustal jedno \u017ar\u00f3d\u0142o stan\u00f3w i automatyczn\u0105 synchronizacj\u0119 (problem 91).<\/p>\n<h3>16. Import produkt\u00f3w z pliku CSV ko\u0144czy si\u0119 b\u0142\u0119dem<\/h3>\n<p>Najcz\u0119stsze przyczyny to z\u0142e kodowanie pliku (musi by\u0107 UTF-8, inaczej psuj\u0105 si\u0119 polskie znaki), \u015bredniki zamiast przecink\u00f3w jako separator i nazwy kolumn niezgodne z importerem. Du\u017ce pliki przerywa te\u017c limit czasu wykonania skryptu na serwerze. Import zatrzymuje si\u0119 w po\u0142owie albo produkty maj\u0105 nieczytelne znaki zamiast liter.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wyeksportuj kilka produkt\u00f3w z w\u0142asnego sklepu i u\u017cyj tego pliku jako wzoru kolumn. Zapisz plik jako CSV UTF-8 z przecinkiem jako separatorem, a du\u017ce importy dziel na cz\u0119\u015bci po kilkaset wierszy.<\/p>\n<h3>17. Produkty duplikuj\u0105 si\u0119 po imporcie<\/h3>\n<p>Importer nie rozpoznaje istniej\u0105cych produkt\u00f3w, bo w pliku brakuje wsp\u00f3lnego identyfikatora albo SKU r\u00f3\u017cni si\u0119 od tego w sklepie, np. spacj\u0105. Zamiast aktualizacji powstaj\u0105 wi\u0119c nowe produkty z t\u0105 sam\u0105 nazw\u0105. Duplikaty szkodz\u0105 te\u017c SEO, bo ta sama tre\u015b\u0107 jest pod kilkoma adresami.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> nadaj ka\u017cdemu produktowi sta\u0142y, unikalny SKU i u\u017cywaj go w ka\u017cdym imporcie. Przy imporcie zaznacz aktualizacj\u0119 istniej\u0105cych produkt\u00f3w, a powsta\u0142e duplikaty usu\u0144 i przekieruj ich adresy na w\u0142a\u015bciwe produkty.<\/p>\n<h3>18. Klienci nie mog\u0105 znale\u017a\u0107 produkt\u00f3w w kategoriach<\/h3>\n<p>Kategorie powstawa\u0142y bez planu, maj\u0105 wiele poziom\u00f3w, a ten sam produkt jest w kilku miejscach naraz. Klient nie wie, gdzie szuka\u0107, i opuszcza sklep, a Google dostaje wiele podobnych stron kategorii. W analityce wida\u0107 kr\u00f3tkie wizyty i du\u017co wyj\u015b\u0107 ze stron kategorii.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zaplanuj drzewo kategorii pod spos\u00f3b, w jaki klient szuka (rodzaj produktu, zastosowanie), maksymalnie dwa lub trzy poziomy. Cechy takie jak kolor, rozmiar czy marka przenie\u015b do atrybut\u00f3w i filtr\u00f3w zamiast tworzy\u0107 z nich kategorie.<\/p>\n<h3>19. Wyszukiwarka w sklepie WooCommerce nie znajduje produkt\u00f3w<\/h3>\n<p>Wbudowane wyszukiwanie WordPressa przeszukuje g\u0142\u00f3wnie tytu\u0142y i tre\u015b\u0107, a nie SKU, atrybuty ani odmiany, i nie radzi sobie z polskimi ko\u0144c\u00f3wkami i liter\u00f3wkami. Klient wpisuje \u201ebuty czarne 42\u201d i dostaje pusty wynik, cho\u0107 produkt jest w sklepie. Brak wynik\u00f3w w wyszukiwarce to cz\u0119sto utracona sprzeda\u017c.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zastosuj wyszukiwark\u0119 produktow\u0105 z podpowiedziami, kt\u00f3ra przeszukuje SKU, atrybuty, kategorie i opisy oraz toleruje liter\u00f3wki. Sprawdzaj w analityce, czego klienci szukaj\u0105 bez wynik\u00f3w, i uzupe\u0142niaj synonimy lub opisy produkt\u00f3w.<\/p>\n<h3>20. Opisy produkt\u00f3w s\u0105 skopiowane od producenta<\/h3>\n<p>Skopiowany opis ma ten sam tekst co setki innych sklep\u00f3w, wi\u0119c Google nie ma powodu pokaza\u0107 wy\u017cej Twojej strony, a klient nie dostaje odpowiedzi na swoje pytania. Kilka zda\u0144 marketingowych to te\u017c s\u0142abe \u017ar\u00f3d\u0142o dla asystent\u00f3w AI. Typowy objaw: karty produkt\u00f3w maj\u0105 ruch tylko z reklam.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zacznij od produkt\u00f3w, kt\u00f3re sprzedaj\u0105 si\u0119 najlepiej, i napisz w\u0142asne opisy: dla kogo jest produkt, jaki problem rozwi\u0105zuje, wymiary i parametry, odpowiedzi na pytania klient\u00f3w. Parametry podawaj w tabeli, a nie w jednym akapicie.<\/p>\n<h2>Koszyk i sk\u0142adanie zam\u00f3wienia<\/h2>\n<p>To miejsce, w kt\u00f3rym sklep zarabia albo traci. Ka\u017cdy b\u0142\u0105d w koszyku to porzucone zam\u00f3wienia.<\/p>\n<h3>21. Koszyk WooCommerce nie aktualizuje si\u0119 po dodaniu produktu<\/h3>\n<p>Najcz\u0119stsza przyczyna to cache stron lub CDN, kt\u00f3ry zapisuje koszyk albo nag\u0142\u00f3wek z licznikiem jak zwyk\u0142\u0105 stron\u0119. Rzadziej winne s\u0105 wtyczki optymalizuj\u0105ce JavaScript, kt\u00f3re op\u00f3\u017aniaj\u0105 skrypt od\u015bwie\u017caj\u0105cy koszyk. Licznik pokazuje 0, a w panelu administratora wszystko dzia\u0142a, bo zalogowany administrator omija cache.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wyklucz z cache strony koszyka, zam\u00f3wienia i konta oraz \u017c\u0105dania z ciasteczkami WooCommerce, a potem sprawd\u017a koszyk po wy\u0142\u0105czeniu op\u00f3\u017aniania i \u0142\u0105czenia skrypt\u00f3w JS. <a href=\"\/blog\/koszyk-woocommerce-nie-aktualizuje-sie\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>22. Koszyk opr\u00f3\u017cnia si\u0119 po od\u015bwie\u017ceniu strony<\/h3>\n<p>Ciasteczka sesji WooCommerce nie docieraj\u0105 do serwera albo s\u0105 zapisane dla innego adresu, bo sklep dzia\u0142a raz z www, raz bez, lub pod http i https. Blokowa\u0107 je mo\u017ce te\u017c cache, CDN albo regu\u0142a serwera. Klient dodaje produkt, przechodzi na inn\u0105 stron\u0119 i widzi pusty koszyk.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw jeden adres sklepu (https, z www albo bez) i przekieruj pozosta\u0142e warianty przekierowaniem 301. Wyklucz z cache \u017c\u0105dania z ciasteczkiem wp_woocommerce_session_ i sprawd\u017a, czy CDN nie usuwa ciasteczek z odpowiedzi.<\/p>\n<h3>23. Wtyczka nie dzia\u0142a w nowym koszyku i zam\u00f3wieniu na blokach<\/h3>\n<p>Od wersji 8.3 nowe sklepy dostaj\u0105 koszyk i zam\u00f3wienie zbudowane z blok\u00f3w, a starsze wtyczki dodaj\u0105 pola i opcje tylko do klasycznego formularza. Brakuje wtedy pola NIP, wyboru paczkomatu albo dodatkowej opcji, cho\u0107 wtyczka jest w\u0142\u0105czona. Problem cz\u0119sto pojawia si\u0119 te\u017c po zmianie motywu na blokowy.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a w opisie wtyczki, czy deklaruje zgodno\u015b\u0107 z blokami koszyka i zam\u00f3wienia. Je\u015bli nie, zaktualizuj j\u0105 lub wymie\u0144 albo na stronach koszyka i zam\u00f3wienia wr\u00f3\u0107 do klasycznych shortcode [woocommerce_cart] i [woocommerce_checkout].<\/p>\n<h3>24. Klient musi za\u0142o\u017cy\u0107 konto, \u017ceby kupi\u0107 w sklepie<\/h3>\n<p>W ustawieniach wy\u0142\u0105czone s\u0105 zakupy bez rejestracji, a wym\u00f3g zak\u0142adania konta to jeden z cz\u0119stszych powod\u00f3w porzucania koszyka. Klient, kt\u00f3ry chce kupi\u0107 raz, nie chce wymy\u015bla\u0107 has\u0142a i potwierdza\u0107 maila. W analityce wida\u0107 wiele wej\u015b\u0107 na stron\u0119 zam\u00f3wienia, kt\u00f3re ko\u0144cz\u0105 si\u0119 wyj\u015bciem.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Konta i prywatno\u015b\u0107 w\u0142\u0105cz sk\u0142adanie zam\u00f3wie\u0144 bez logowania. Zostaw mo\u017cliwo\u015b\u0107 za\u0142o\u017cenia konta w trakcie zam\u00f3wienia lub po nim, bez dodatkowych krok\u00f3w.<\/p>\n<h3>25. Formularz zam\u00f3wienia ma za du\u017co p\u00f3l<\/h3>\n<p>Domy\u015blny formularz WooCommerce pyta o dane, kt\u00f3rych wi\u0119kszo\u015b\u0107 sklep\u00f3w nie potrzebuje: nazw\u0119 firmy od wszystkich, drugi wiersz adresu, wojew\u00f3dztwo. Ka\u017cde zb\u0119dne pole wyd\u0142u\u017ca zakup, szczeg\u00f3lnie na telefonie. Klienci porzucaj\u0105 zam\u00f3wienie w po\u0142owie wype\u0142niania formularza.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> usu\u0144 zb\u0119dne pola edytorem p\u00f3l zam\u00f3wienia albo kodem w motywie potomnym, dane firmy pokazuj dopiero po zaznaczeniu \u201eChc\u0119 faktur\u0119 na firm\u0119\u201d, a kolejno\u015b\u0107 p\u00f3l ustaw pod polski adres (ulica, kod pocztowy, miasto).<\/p>\n<h3>26. Brak pola NIP w zam\u00f3wieniu WooCommerce<\/h3>\n<p>WooCommerce nie ma domy\u015blnie pola NIP, wi\u0119c klienci firmowi wpisuj\u0105 go w uwagach do zam\u00f3wienia albo przesy\u0142aj\u0105 osobno. To powoduje b\u0142\u0119dy w dokumentach sprzeda\u017cy i r\u0119czne poprawki. Ksi\u0119gowo\u015b\u0107 dostaje zam\u00f3wienia bez numeru NIP albo z NIP w przypadkowym polu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj pole NIP pokazywane po zaznaczeniu zakupu na firm\u0119, z walidacj\u0105 formatu i zapisem w danych zam\u00f3wienia. Przekazuj NIP do programu fakturowego razem z zam\u00f3wieniem i sprawd\u017a, czy pole pokazuje si\u0119 tak\u017ce w zam\u00f3wieniu na blokach.<\/p>\n<h3>27. Kod rabatowy w WooCommerce nie dzia\u0142a<\/h3>\n<p>Kupon ma ograniczenia, o kt\u00f3rych nikt nie pami\u0119ta: minimaln\u0105 kwot\u0119 zam\u00f3wienia, wykluczone kategorie lub produkty w promocji, limit u\u017cy\u0107 albo dat\u0119 wyga\u015bni\u0119cia. WooCommerce pokazuje wtedy og\u00f3lny komunikat, \u017ce kuponu nie mo\u017cna zastosowa\u0107. Rzadziej winna jest wtyczka do rabat\u00f3w, kt\u00f3ra nadpisuje kupony.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a wszystkie zak\u0142adki kuponu (Og\u00f3lne, Ograniczenia u\u017cycia, Limity) i przetestuj go jako zwyk\u0142y klient na koszyku spe\u0142niaj\u0105cym warunki. W komunikacie promocji podawaj warunki, np. minimaln\u0105 kwot\u0119 i dat\u0119 ko\u0144ca.<\/p>\n<h3>28. Klienci porzucaj\u0105 koszyk przy kosztach dostawy<\/h3>\n<p>Koszt dostawy pojawia si\u0119 dopiero na ostatnim etapie i zaskakuje klienta, kt\u00f3ry liczy\u0142 inn\u0105 kwot\u0119. Nieoczekiwane koszty to jeden z najcz\u0119stszych powod\u00f3w porzucania koszyka. W analityce wida\u0107 wiele wej\u015b\u0107 na stron\u0119 zam\u00f3wienia i ma\u0142o zakup\u00f3w, szczeg\u00f3lnie przy ma\u0142ych koszykach.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> poka\u017c koszty dostawy wcze\u015bniej, na karcie produktu lub w koszyku, dodaj pasek \u201edo darmowej dostawy brakuje X z\u0142\u201d i ustaw pr\u00f3g darmowej dostawy dopasowany do <a href=\"\/blog\/jak-zwiekszyc-srednia-wartosc-koszyka-w-sklepie-internetowym-8-sprawdzonych-metod\/\">\u015bredniej warto\u015bci zam\u00f3wienia<\/a>.<\/p>\n<h3>29. Przycisk \u201eKupuj\u0119 i p\u0142ac\u0119\u201d nie reaguje<\/h3>\n<p>Zwykle to b\u0142\u0105d JavaScript na stronie zam\u00f3wienia, wywo\u0142any przez wtyczk\u0119, skrypt \u015bledz\u0105cy albo agresywn\u0105 optymalizacj\u0119 JS (op\u00f3\u017anianie, \u0142\u0105czenie plik\u00f3w). Jeden b\u0142\u0105d zatrzymuje kolejne skrypty, w tym skrypt p\u0142atno\u015bci. Przyczyn\u0105 bywa te\u017c wymagane pole, kt\u00f3rego klient nie widzi, bo motyw je ukry\u0142.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> otw\u00f3rz konsol\u0119 przegl\u0105darki (F12) na stronie zam\u00f3wienia i znajd\u017a pierwszy b\u0142\u0105d. Wy\u0142\u0105cz optymalizacj\u0119 JS dla tej strony, a potem kolejno wtyczki dodaj\u0105ce skrypty, a\u017c przycisk zacznie dzia\u0142a\u0107.<\/p>\n<h3>30. Zam\u00f3wienia testowe mieszaj\u0105 si\u0119 z prawdziwymi<\/h3>\n<p>Testy p\u0142atno\u015bci, wysy\u0142ki i maili robione s\u0105 na dzia\u0142aj\u0105cym sklepie. Zam\u00f3wienia testowe zawy\u017caj\u0105 statystyki, zmniejszaj\u0105 stany magazynowe i mog\u0105 trafi\u0107 do ksi\u0119gowo\u015bci lub kuriera. W raportach pojawiaj\u0105 si\u0119 zam\u00f3wienia \u201etest\u201d, a stany nie zgadzaj\u0105 si\u0119 z magazynem.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> testuj na kopii sklepu z trybem testowym bramek p\u0142atno\u015bci. Je\u015bli musisz sprawdzi\u0107 co\u015b na dzia\u0142aj\u0105cym sklepie, oznaczaj zam\u00f3wienia testowe, przywracaj stany i usuwaj te zam\u00f3wienia po te\u015bcie.<\/p>\n<h2>P\u0142atno\u015bci<\/h2>\n<p>Problemy z p\u0142atno\u015bciami s\u0105 najdro\u017csze, bo klient chce zap\u0142aci\u0107, a nie mo\u017ce.<\/p>\n<h3>31. Klient zap\u0142aci\u0142, a zam\u00f3wienie dalej \u201eOczekuje na p\u0142atno\u015b\u0107\u201d<\/h3>\n<p>Sklep nie dosta\u0142 powiadomienia od operatora p\u0142atno\u015bci (webhook, adres powiadomie\u0144), wi\u0119c nie wie, \u017ce p\u0142atno\u015b\u0107 si\u0119 uda\u0142a. Powiadomienie blokuje zwykle zapora, cache, przekierowanie albo z\u0142y adres w panelu operatora. W panelu operatora p\u0142atno\u015b\u0107 jest zako\u0144czona, a w WooCommerce zam\u00f3wienie nadal czeka.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a adres powiadomie\u0144 w panelu operatora, wyklucz go z cache i zapory, a w logach wtyczki p\u0142atno\u015bci (WooCommerce, Status, Logi) szukaj b\u0142\u0119d\u00f3w weryfikacji. <a href=\"\/blog\/woocommerce-zamowienie-oczekuje-na-platnosc\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>32. W sklepie WooCommerce nie ma p\u0142atno\u015bci BLIK<\/h3>\n<p>WooCommerce sam nie obs\u0142uguje polskich metod p\u0142atno\u015bci, a BLIK i szybkie przelewy wymagaj\u0105 wtyczki operatora i aktywacji us\u0142ugi w jego panelu. Cz\u0119sto wtyczka jest zainstalowana, ale metoda nie zosta\u0142a w\u0142\u0105czona u operatora. Polski klient oczekuje BLIK, wi\u0119c jego brak kosztuje sprzeda\u017c.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zainstaluj oficjaln\u0105 wtyczk\u0119 polskiego operatora (np. Przelewy24, PayU, Tpay, Autopay) z obs\u0142ug\u0105 BLIK, w\u0142\u0105cz metod\u0119 w panelu operatora i w ustawieniach p\u0142atno\u015bci sklepu, a potem z\u0142\u00f3\u017c zam\u00f3wienie testowe.<\/p>\n<h3>33. P\u0142atno\u015b\u0107 kart\u0105 jest odrzucana przy weryfikacji 3D Secure<\/h3>\n<p>Wtyczka bramki jest nieaktualna albo okno weryfikacji banku blokuje skrypt, zapora lub ustawienia bezpiecze\u0144stwa strony, np. nag\u0142\u00f3wki blokuj\u0105ce ramki. Klient potwierdza p\u0142atno\u015b\u0107 w aplikacji banku, a sklep pokazuje b\u0142\u0105d. Problem cz\u0119sto dotyczy tylko cz\u0119\u015bci bank\u00f3w lub kart.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zaktualizuj wtyczk\u0119 bramki i przejrzyj jej logi. Z\u0142\u00f3\u017c zam\u00f3wienie w trybie testowym z kart\u0105 testow\u0105 wymagaj\u0105c\u0105 3D Secure i sprawd\u017a w konsoli przegl\u0105darki, czy nie s\u0105 blokowane ramki lub skrypty operatora.<\/p>\n<h3>34. Klient zosta\u0142 obci\u0105\u017cony za zam\u00f3wienie dwa razy<\/h3>\n<p>Klient klikn\u0105\u0142 przycisk p\u0142atno\u015bci kilka razy albo wr\u00f3ci\u0142 do p\u0142atno\u015bci z historii przegl\u0105darki i zap\u0142aci\u0142 ponownie. Sprzyja temu wolna strona zam\u00f3wienia, na kt\u00f3rej po klikni\u0119ciu nic nie wskazuje, \u017ce p\u0142atno\u015b\u0107 trwa. Rzadziej przyczyn\u0105 jest wtyczka tworz\u0105ca now\u0105 transakcj\u0119 przy ka\u017cdym powrocie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> blokuj przycisk po pierwszym klikni\u0119ciu i pokazuj wska\u017anik \u0142adowania, a we wtyczce p\u0142atno\u015bci korzystaj z wersji, kt\u00f3ra sprawdza status przed utworzeniem nowej transakcji. Podw\u00f3jne p\u0142atno\u015bci zwracaj od razu przez panel operatora.<\/p>\n<h3>35. P\u0142atno\u015b\u0107 za pobraniem pokazuje si\u0119 przy ka\u017cdej metodzie dostawy<\/h3>\n<p>Metoda \u201eZa pobraniem\u201d jest domy\u015blnie dost\u0119pna dla wszystkich metod dostawy, tak\u017ce dla produkt\u00f3w cyfrowych czy dostaw, kt\u00f3re nie obs\u0142uguj\u0105 pobrania. Klient wybiera pobranie tam, gdzie nie da si\u0119 go zrealizowa\u0107, i zam\u00f3wienie trzeba wyja\u015bnia\u0107 r\u0119cznie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w ustawieniach p\u0142atno\u015bci za pobraniem, w polu w\u0142\u0105czania dla metod wysy\u0142ki, wska\u017c tylko metody obs\u0142uguj\u0105ce pobranie. Je\u015bli pobranie kosztuje Ci\u0119 wi\u0119cej, utw\u00f3rz osobn\u0105 metod\u0119 dostawy \u201eKurier za pobraniem\u201d z w\u0142asn\u0105 cen\u0105 zamiast dop\u0142aty do p\u0142atno\u015bci.<\/p>\n<h3>36. Zwrot pieni\u0119dzy trzeba robi\u0107 r\u0119cznie w panelu operatora<\/h3>\n<p>Wtyczka p\u0142atno\u015bci nie obs\u0142uguje zwrot\u00f3w z poziomu WooCommerce albo nie ma skonfigurowanych kluczy API. Zwrot robi si\u0119 wtedy osobno u operatora, a status zam\u00f3wienia trzeba zmienia\u0107 r\u0119cznie, co prowadzi do pomy\u0142ek w rozliczeniach.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> u\u017cyj wtyczki, kt\u00f3ra obs\u0142uguje zwroty z edycji zam\u00f3wienia, i uzupe\u0142nij klucze API w jej ustawieniach. Przetestuj zwrot cz\u0119\u015bciowy i pe\u0142ny w trybie testowym, sprawdzaj\u0105c, czy status zam\u00f3wienia zmienia si\u0119 razem ze zwrotem.<\/p>\n<h3>37. Klient zap\u0142aci\u0142, ale nie dosta\u0142 potwierdzenia zam\u00f3wienia<\/h3>\n<p>Mail o przyj\u0119ciu zam\u00f3wienia jest wy\u0142\u0105czony, trafia do spamu albo nie wysy\u0142a si\u0119, bo status zam\u00f3wienia nie zmieni\u0142 si\u0119 po p\u0142atno\u015bci. WooCommerce wysy\u0142a maile przy zmianie statusu, wi\u0119c problem z powiadomieniem o p\u0142atno\u015bci (problem 31) daje te\u017c problem z mailami. Klient bez potwierdzenia pisze z pytaniem albo p\u0142aci drugi raz.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a w WooCommerce, Ustawienia, E-maile, czy powiadomienie o zam\u00f3wieniu w trakcie realizacji jest w\u0142\u0105czone, skonfiguruj wysy\u0142k\u0119 przez SMTP (problem 8) i sprawd\u017a status zam\u00f3wienia po p\u0142atno\u015bci testowej.<\/p>\n<h3>38. Raty i p\u0142atno\u015bci odroczone nie pokazuj\u0105 si\u0119 w sklepie<\/h3>\n<p>Raty i p\u0142atno\u015bci odroczone wymagaj\u0105 osobnej aktywacji u operatora i zwykle maj\u0105 minimaln\u0105 oraz maksymaln\u0105 kwot\u0119 koszyka. Je\u015bli koszyk jest poza tym zakresem albo us\u0142uga nie jest aktywna, metoda si\u0119 nie pokazuje. Brak informacji o ratach na karcie produktu sprawia, \u017ce klient w og\u00f3le o nich nie wie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a warunki i aktywacj\u0119 us\u0142ugi u operatora oraz w ustawieniach wtyczki. Pokazuj informacj\u0119 o ratach na karcie produktu, nie dopiero przy wyborze p\u0142atno\u015bci.<\/p>\n<h3>39. Czy sklep mo\u017ce dolicza\u0107 op\u0142at\u0119 za metod\u0119 p\u0142atno\u015bci?<\/h3>\n<p>Zwykle nie warto: doliczanie konsumentowi op\u0142aty za wyb\u00f3r konkretnej metody p\u0142atno\u015bci, np. karty, jest w wielu przypadkach zakazane przepisami o us\u0142ugach p\u0142atniczych, a wtyczki do op\u0142at dodatkowych tego nie sprawdzaj\u0105. Ryzykiem s\u0105 skargi klient\u00f3w i problemy z operatorem. Objaw: w koszyku pojawia si\u0119 pozycja \u201eop\u0142ata za p\u0142atno\u015b\u0107\u201d.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zamiast dop\u0142at wkalkuluj prowizje operatora w ceny albo zach\u0119caj do ta\u0144szej metody rabatem. Je\u015bli op\u0142ata ju\u017c dzia\u0142a, wy\u0142\u0105cz j\u0105 i sprawd\u017a zasady z prawnikiem lub operatorem p\u0142atno\u015bci.<\/p>\n<h3>40. Bramka p\u0142atno\u015bci zwraca b\u0142\u0105d kwoty albo waluty<\/h3>\n<p>Waluta sklepu, liczba miejsc po przecinku albo zaokr\u0105glenia nie zgadzaj\u0105 si\u0119 z tym, czego oczekuje operator. Rabaty procentowe i podatek potrafi\u0105 da\u0107 kwot\u0119 z u\u0142amkiem grosza, kt\u00f3r\u0105 bramka odrzuca. P\u0142atno\u015b\u0107 nie startuje, a log wtyczki m\u00f3wi o niepoprawnej kwocie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw PLN z dwoma miejscami po przecinku w ustawieniach og\u00f3lnych, sprawd\u017a zaokr\u0105glanie w ustawieniach podatku i przetestuj zam\u00f3wienie z rabatem procentowym, dostaw\u0105 i kilkoma produktami.<\/p>\n<h2>Wysy\u0142ka i dostawa<\/h2>\n<p>Dostawa to drugi po cenie pow\u00f3d, dla kt\u00f3rego klient wybiera sklep. \u0179le ustawiona wysy\u0142ka kosztuje zar\u00f3wno sprzeda\u017c, jak i mar\u017c\u0119.<\/p>\n<h3>41. Brak paczkomat\u00f3w InPost przy zam\u00f3wieniu w WooCommerce<\/h3>\n<p>Wysy\u0142ka do paczkomatu wymaga wtyczki z map\u0105 wyboru punktu, po\u0142\u0105czonej z kontem InPost. Najcz\u0119\u015bciej metoda nie jest dodana do strefy wysy\u0142ki, brakuje tokenu API albo wtyczka nie dzia\u0142a z koszykiem na blokach (problem 23). Metoda paczkomatowa si\u0119 nie pokazuje albo nie da si\u0119 wybra\u0107 punktu na mapie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zainstaluj oficjaln\u0105 wtyczk\u0119 InPost, po\u0142\u0105cz j\u0105 z kontem ShipX i dodaj metod\u0119 paczkomatow\u0105 do strefy wysy\u0142ki dla Polski. Sprawd\u017a wyb\u00f3r punktu w zam\u00f3wieniu. <a href=\"\/blog\/woocommerce-brak-paczkomatow-inpost\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>42. Koszt wysy\u0142ki liczy si\u0119 \u017ale przy kilku produktach<\/h3>\n<p>Stawka sta\u0142a jest naliczana za ka\u017cdy produkt zamiast za paczk\u0119 albo nie uwzgl\u0119dnia gabaryt\u00f3w i wagi. Klient widzi wtedy zawy\u017cony koszt dostawy przy kilku ma\u0142ych produktach lub zani\u017cony przy du\u017cym. Typowy objaw: koszt dostawy ro\u015bnie z ka\u017cd\u0105 sztuk\u0105 w koszyku.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w metodzie stawki rycza\u0142towej u\u017cyj klas wysy\u0142kowych dla produkt\u00f3w gabarytowych i naliczaj koszt wed\u0142ug najdro\u017cszej klasy w zam\u00f3wieniu. Przy z\u0142o\u017conych zasadach (waga, liczba paczek) u\u017cyj wtyczki do tabel koszt\u00f3w wysy\u0142ki.<\/p>\n<h3>43. Klient spoza Polski nie mo\u017ce z\u0142o\u017cy\u0107 zam\u00f3wienia<\/h3>\n<p>Strefy wysy\u0142ki obejmuj\u0105 tylko Polsk\u0119, wi\u0119c dla innego kraju WooCommerce nie pokazuje \u017cadnej metody dostawy i zam\u00f3wienia nie da si\u0119 z\u0142o\u017cy\u0107. Czasem kraje sprzeda\u017cy s\u0105 te\u017c ograniczone w ustawieniach og\u00f3lnych. Klient widzi komunikat o braku dost\u0119pnych metod wysy\u0142ki.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Wysy\u0142ka dodaj strefy dla kraj\u00f3w, do kt\u00f3rych wysy\u0142asz, z osobnymi cenami, i sprawd\u017a list\u0119 kraj\u00f3w sprzeda\u017cy w ustawieniach og\u00f3lnych. Je\u015bli sprzedajesz tylko w Polsce, napisz to wyra\u017anie przy dostawie.<\/p>\n<h3>44. Darmowa dostawa w\u0142\u0105cza si\u0119 przy z\u0142ej kwocie<\/h3>\n<p>Pr\u00f3g darmowej dostawy w WooCommerce mo\u017ce liczy\u0107 kwot\u0119 przed albo po rabacie z kuponu, zale\u017cnie od ustawienia metody. Klient z kuponem dostaje darmow\u0105 dostaw\u0119, cho\u0107 po rabacie nie spe\u0142nia progu, albo odwrotnie. Do tego sam kupon mo\u017ce dawa\u0107 darmow\u0105 dostaw\u0119, je\u015bli ma zaznaczon\u0105 tak\u0105 opcj\u0119.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w metodzie darmowej wysy\u0142ki ustaw warunek minimalnej kwoty i zdecyduj, czy pr\u00f3g dotyczy kwoty przed rabatem. Sprawd\u017a kupony z opcj\u0105 darmowej wysy\u0142ki i opisz zasady w regulaminie promocji.<\/p>\n<h3>45. Etykiety wysy\u0142kowe trzeba przepisywa\u0107 r\u0119cznie<\/h3>\n<p>Sklep nie jest po\u0142\u0105czony z kontem kuriera, wi\u0119c dane z zam\u00f3wie\u0144 przepisuje si\u0119 r\u0119cznie do panelu przewo\u017anika. To strata czasu przy ka\u017cdym zam\u00f3wieniu i \u017ar\u00f3d\u0142o pomy\u0142ek w adresach, a numer przesy\u0142ki trzeba potem jeszcze r\u0119cznie wklei\u0107 do zam\u00f3wienia. Problem ro\u015bnie razem z liczb\u0105 zam\u00f3wie\u0144 i zwykle wychodzi w okresie wzmo\u017conej sprzeda\u017cy.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> po\u0142\u0105cz sklep z kontem kuriera przez oficjaln\u0105 wtyczk\u0119 albo system do obs\u0142ugi zam\u00f3wie\u0144 (np. BaseLinker). Etykiety tworzysz wtedy z listy zam\u00f3wie\u0144, a numer przesy\u0142ki wraca do zam\u00f3wienia automatycznie.<\/p>\n<h3>46. Klient nie dostaje numeru przesy\u0142ki<\/h3>\n<p>Numer przesy\u0142ki nie trafia do zam\u00f3wienia albo sklep nie ma maila o wys\u0142aniu, bo WooCommerce domy\u015blnie nie ma statusu \u201eWys\u0142ane\u201d. Klient nie wie, gdzie jest paczka, i pisze z pytaniami. Skrzynka obs\u0142ugi zape\u0142nia si\u0119 wiadomo\u015bciami \u201ekiedy dostan\u0119 zam\u00f3wienie\u201d.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj automatyczne przypisanie numeru \u015bledzenia do zam\u00f3wienia (z wtyczki kuriera lub systemu do obs\u0142ugi zam\u00f3wie\u0144) i mail z linkiem do \u015bledzenia przy zmianie statusu na zrealizowane albo w\u0142asny status \u201eWys\u0142ane\u201d.<\/p>\n<h3>47. Odbi\u00f3r osobisty pokazuje si\u0119 klientom z ca\u0142ej Polski<\/h3>\n<p>Odbi\u00f3r osobisty jest dodany do strefy obejmuj\u0105cej ca\u0142y kraj, wi\u0119c widzi go te\u017c klient z drugiego ko\u0144ca Polski. Cz\u0119\u015b\u0107 klient\u00f3w wybiera go przez pomy\u0142k\u0119, bo jest darmowy. Skutkiem s\u0105 zam\u00f3wienia z odbiorem osobistym od os\u00f3b, kt\u00f3re nie mog\u0105 przyjecha\u0107.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> utw\u00f3rz osobn\u0105 stref\u0119 wysy\u0142ki ograniczon\u0105 do kod\u00f3w pocztowych Twojej okolicy i dodaj odbi\u00f3r osobisty tylko do niej. Przy metodzie opisz miejsce, godziny i spos\u00f3b potwierdzenia, \u017ce zam\u00f3wienie czeka na odbi\u00f3r.<\/p>\n<h3>48. Produkty cyfrowe wymagaj\u0105 podania adresu dostawy<\/h3>\n<p>Produkty nie s\u0105 oznaczone jako wirtualne lub do pobrania, wi\u0119c WooCommerce traktuje je jak fizyczne: pyta o adres wysy\u0142ki i nalicza dostaw\u0119. Klient kupuj\u0105cy e-book albo us\u0142ug\u0119 musi wybiera\u0107 kuriera. To niepotrzebnie wyd\u0142u\u017ca zam\u00f3wienie i budzi w\u0105tpliwo\u015bci.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w edycji produktu zaznacz \u201eWirtualny\u201d (us\u0142ugi, dost\u0119p) albo \u201eDo pobrania\u201d (pliki). Je\u015bli koszyk zawiera tylko takie produkty, WooCommerce nie pyta o adres wysy\u0142ki i nie nalicza koszt\u00f3w dostawy.<\/p>\n<h3>49. W sklepie nie ma informacji, kiedy przyjdzie zam\u00f3wienie<\/h3>\n<p>Klient nie wie, kiedy dostanie zam\u00f3wienie, wi\u0119c rezygnuje albo pisze z pytaniami przed zakupem. WooCommerce nie ma domy\u015blnie pola z czasem realizacji, dlatego wiele sklep\u00f3w go nie pokazuje. Dotyczy to szczeg\u00f3lnie produkt\u00f3w na zam\u00f3wienie i dost\u0119pnych u dostawcy.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> pokazuj czas wysy\u0142ki na karcie produktu i przy metodach dostawy, zgodnie z tym, co faktycznie realizujesz. Dla produkt\u00f3w o r\u00f3\u017cnej dost\u0119pno\u015bci u\u017cyj pola lub atrybutu z czasem realizacji.<\/p>\n<h3>50. Zwroty i reklamacje s\u0105 obs\u0142ugiwane mailowo bez porz\u0105dku<\/h3>\n<p>Bez formularza zwrotu i osobnych status\u00f3w zg\u0142oszenia gin\u0105 w skrzynce, a terminy \u0142atwo przegapi\u0107. Konsument ma 14 dni na odst\u0105pienie od umowy zawartej na odleg\u0142o\u015b\u0107, a sklep musi zwr\u00f3ci\u0107 mu p\u0142atno\u015b\u0107 w ustawowym terminie. Objaw: nikt nie wie, kt\u00f3re zwroty s\u0105 w toku.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj formularz zwrotu z numerem zam\u00f3wienia, osobne statusy dla zwrot\u00f3w i reklamacji oraz maile przy ich zmianie. Opisz procedur\u0119 krok po kroku w regulaminie i na stronie o zwrotach.<\/p>\n<h2>Prawo i zgodno\u015b\u0107<\/h2>\n<p>Te problemy nie daj\u0105 b\u0142\u0119d\u00f3w na ekranie, ale mog\u0105 sko\u0144czy\u0107 si\u0119 kar\u0105, skarg\u0105 albo sporem z klientem. Warto przejrze\u0107 je w pierwszej kolejno\u015bci.<\/p>\n<h3>51. Jak pokaza\u0107 najni\u017csz\u0105 cen\u0119 z 30 dni w WooCommerce (Omnibus)<\/h3>\n<p>Od 1 stycznia 2023 r. przy ka\u017cdej obni\u017cce ceny trzeba pokaza\u0107 najni\u017csz\u0105 cen\u0119 z 30 dni przed obni\u017ck\u0105, a sam WooCommerce tej informacji nie zapisuje ani nie wy\u015bwietla. Najcz\u0119stsze b\u0142\u0119dy to przekre\u015blona cena bez najni\u017cszej ceny i brak informacji w wariantach. Dotyczy to ka\u017cdej promocji, tak\u017ce wyprzeda\u017cy sezonowych.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj wtyczk\u0119, kt\u00f3ra zapisuje histori\u0119 cen ka\u017cdego produktu i wariantu i wy\u015bwietla najni\u017csz\u0105 cen\u0119 z 30 dni przy produktach w promocji. Sprawd\u017a kart\u0119 produktu, list\u0119 produkt\u00f3w i warianty. <a href=\"\/blog\/omnibus-najnizsza-cena-30-dni-woocommerce\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>52. Brak danych producenta przy produktach (GPSR)<\/h3>\n<p>Od 13 grudnia 2024 r. przy produktach sprzedawanych w UE trzeba poda\u0107 m.in. dane producenta (a gdy producent jest spoza UE, osoby odpowiedzialnej w UE), identyfikator produktu oraz ostrze\u017cenia i informacje o bezpiecze\u0144stwie. WooCommerce nie ma na to p\u00f3l, wi\u0119c wiele sklep\u00f3w tych danych nie pokazuje.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj do produkt\u00f3w pola GPSR (atrybuty, pola w\u0142asne albo wtyczka), wype\u0142nij je dla ka\u017cdego producenta i wy\u015bwietlaj na karcie produktu w widocznym miejscu. <a href=\"\/blog\/gpsr-woocommerce-dane-producenta\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>53. Czy mo\u017cna skopiowa\u0107 regulamin z innego sklepu?<\/h3>\n<p>Nie warto: cudzy regulamin nie pasuje do Twoich metod p\u0142atno\u015bci, dostawy i zwrot\u00f3w i mo\u017ce zawiera\u0107 postanowienia niedozwolone wobec konsument\u00f3w. Rozbie\u017cno\u015b\u0107 mi\u0119dzy regulaminem a tym, jak sklep naprawd\u0119 dzia\u0142a, ko\u0144czy si\u0119 sporami z klientami. Typowy objaw: w regulaminie s\u0105 metody p\u0142atno\u015bci lub dostawy, kt\u00f3rych nie oferujesz.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przygotuj regulamin dla swojego sklepu: dane firmy, przebieg zam\u00f3wienia, p\u0142atno\u015bci i dostawa, prawo odst\u0105pienia od umowy w 14 dni i procedura reklamacji. Aktualizuj go przy ka\u017cdej zmianie metod p\u0142atno\u015bci lub dostawy.<\/p>\n<h3>54. W zam\u00f3wieniu nie ma pola akceptacji regulaminu<\/h3>\n<p>W ustawieniach WooCommerce nie wskazano strony regulaminu, wi\u0119c pole akceptacji nie pojawia si\u0119 w formularzu. Klient powinien zapozna\u0107 si\u0119 z regulaminem i go zaakceptowa\u0107 przed z\u0142o\u017ceniem zam\u00f3wienia, a sklep powinien mie\u0107 na to dow\u00f3d. Problem cz\u0119sto pojawia si\u0119 po przej\u015bciu na zam\u00f3wienie na blokach.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Zaawansowane wska\u017c stron\u0119 regulaminu. W zam\u00f3wieniu na blokach sprawd\u017a blok warunk\u00f3w i w\u0142\u0105cz w nim wymagane pole wyboru, a potem z\u0142\u00f3\u017c zam\u00f3wienie testowe.<\/p>\n<h3>55. Jaki napis musi mie\u0107 przycisk sk\u0142adania zam\u00f3wienia?<\/h3>\n<p>Przycisk musi jasno informowa\u0107, \u017ce zam\u00f3wienie wi\u0105\u017ce si\u0119 z obowi\u0105zkiem zap\u0142aty, np. \u201eZamawiam z obowi\u0105zkiem zap\u0142aty\u201d albo \u201eKupuj\u0119 i p\u0142ac\u0119\u201d. Og\u00f3lne napisy typu \u201eDalej\u201d czy \u201eWy\u015blij\u201d tego wymogu nie spe\u0142niaj\u0105. Motywy i wtyczki cz\u0119sto nadpisuj\u0105 tekst przycisku bez wiedzy w\u0142a\u015bciciela sklepu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a tekst przycisku na stronie zam\u00f3wienia jako zwyk\u0142y klient. Je\u015bli jest niejasny, zmie\u0144 go w ustawieniach bloku zam\u00f3wienia, w t\u0142umaczeniu albo filtrem woocommerce_order_button_text w motywie potomnym.<\/p>\n<h3>56. Baner cookies nie blokuje Google Analytics przed zgod\u0105<\/h3>\n<p>Skrypty Google Analytics, reklam i pikseli \u0142aduj\u0105 si\u0119 od razu, a baner tylko informuje o cookies. Zgoda na cookies analityczne i marketingowe musi by\u0107 wyra\u017cona przed ich zapisaniem, a od marca 2024 r. Google wymaga Consent Mode v2 do pe\u0142nego dzia\u0142ania funkcji reklamowych wobec u\u017cytkownik\u00f3w z EOG. W narz\u0119dziach przegl\u0105darki wida\u0107 ciasteczka _ga przed klikni\u0119ciem zgody.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wdr\u00f3\u017c baner, kt\u00f3ry blokuje skrypty do czasu zgody i przekazuje wyb\u00f3r klienta przez Consent Mode v2 do Google Analytics i Google Ads. Sprawd\u017a dzia\u0142anie w oknie incognito.<\/p>\n<h3>57. Polityka prywatno\u015bci nie opisuje danych z zam\u00f3wie\u0144<\/h3>\n<p>Gotowe wzory polityki prywatno\u015bci nie m\u00f3wi\u0105, jakie dane zbiera Tw\u00f3j sklep i komu je przekazuje. RODO, stosowane od 25 maja 2018 r., wymaga informowania o celach i podstawach przetwarzania, odbiorcach danych i okresie przechowywania. Zwykle brakuje operatora p\u0142atno\u015bci, kuriera, biura rachunkowego i narz\u0119dzi marketingowych.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> spisz wszystkie narz\u0119dzia i firmy, kt\u00f3re dostaj\u0105 dane klient\u00f3w (p\u0142atno\u015bci, kurierzy, ksi\u0119gowo\u015b\u0107, mailing, analityka), i opisz je w polityce. Aktualizuj j\u0105 przy ka\u017cdej nowej integracji.<\/p>\n<h3>58. Czy sklep internetowy musi by\u0107 dost\u0119pny dla os\u00f3b z niepe\u0142nosprawno\u015bciami (EAA)?<\/h3>\n<p>Tak, od 28 czerwca 2025 r. sklepy internetowe musz\u0105 spe\u0142nia\u0107 wymagania dost\u0119pno\u015bci, z wyj\u0105tkiem mikroprzedsi\u0119biorstw \u015bwiadcz\u0105cych us\u0142ugi. Najcz\u0119stsze b\u0142\u0119dy to s\u0142aby kontrast, brak obs\u0142ugi klawiatur\u0105, zdj\u0119cia bez opis\u00f3w, pola formularzy bez etykiet i niejasne komunikaty b\u0142\u0119d\u00f3w. Wymagania dotycz\u0105 ca\u0142ej \u015bcie\u017cki zakupu, nie tylko strony g\u0142\u00f3wnej.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przejd\u017a zakup od karty produktu do p\u0142atno\u015bci sam\u0105 klawiatur\u0105, sprawd\u017a kontrast i opisy zdj\u0119\u0107, a potem popraw motyw i formularze. Dodaj na stronie informacj\u0119 o tym, jak sklep spe\u0142nia wymagania dost\u0119pno\u015bci.<\/p>\n<h3>59. Jak przygotowa\u0107 sklep WooCommerce do KSeF?<\/h3>\n<p>Krajowy System e-Faktur jest obowi\u0105zkowy etapami od 2026 roku, a WooCommerce nie \u0142\u0105czy si\u0119 z nim sam. Potrzebny jest program do faktur z obs\u0142ug\u0105 KSeF i integracja ze sklepem. Bez niej faktury do zam\u00f3wie\u0144 firmowych trzeba wystawia\u0107 r\u0119cznie, co przy wi\u0119kszej liczbie zam\u00f3wie\u0144 prowadzi do op\u00f3\u017anie\u0144 i b\u0142\u0119d\u00f3w.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> po\u0142\u0105cz sklep z programem do faktur obs\u0142uguj\u0105cym KSeF, tak aby faktura powstawa\u0142a automatycznie z zam\u00f3wienia z NIP (problem 26). Sprawd\u017a, od kiedy obowi\u0105zek dotyczy Twojej firmy, i przetestuj integracj\u0119 z wyprzedzeniem.<\/p>\n<h3>60. Opinie w sklepie nie maj\u0105 informacji, czy s\u0105 zweryfikowane<\/h3>\n<p>Przepisy wprowadzone razem z dyrektyw\u0105 Omnibus wymagaj\u0105 informowania, czy i jak sklep sprawdza, \u017ce opinie pochodz\u0105 od os\u00f3b, kt\u00f3re kupi\u0142y produkt. Brak tej informacji albo publikowanie niesprawdzonych opinii to ryzyko zarzutu wprowadzania klient\u00f3w w b\u0142\u0105d. Typowa sytuacja: opini\u0119 mo\u017ce doda\u0107 ka\u017cdy, a zasad publikowania nigdzie nie opisano.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, Produkty w\u0142\u0105cz opinie tylko od zweryfikowanych w\u0142a\u015bcicieli i oznaczenie zweryfikowanego kupuj\u0105cego. W regulaminie lub na osobnej stronie opisz, jak sprawdzasz opinie.<\/p>\n<h2>Szybko\u015b\u0107 i wydajno\u015b\u0107<\/h2>\n<p>Wolny sklep traci klient\u00f3w na telefonach i pozycje w Google. Core Web Vitals (LCP, INP, CLS) to wska\u017aniki, kt\u00f3re Google mierzy u prawdziwych u\u017cytkownik\u00f3w.<\/p>\n<h3>61. Sklep WooCommerce wolno dzia\u0142a na telefonie<\/h3>\n<p>Typowe przyczyny to ci\u0119\u017cki motyw z kreatorem stron, du\u017ce zdj\u0119cia i kilkadziesi\u0105t skrypt\u00f3w \u0142adowanych na ka\u017cdej stronie. Telefon ma s\u0142abszy procesor i cz\u0119sto wolniejsze \u0142\u0105cze, wi\u0119c to, co na komputerze jest akceptowalne, na telefonie trwa kilka sekund. PageSpeed Insights pokazuje s\u0142abe LCP i INP w wersji mobilnej.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zmierz kart\u0119 produktu i kategori\u0119 w PageSpeed Insights, zacznij od najwi\u0119kszego elementu (LCP), zmniejsz zdj\u0119cia i wy\u0142\u0105cz skrypty, kt\u00f3re nie s\u0105 potrzebne na danej stronie. <a href=\"\/blog\/wolny-sklep-woocommerce-na-telefonie\/\">Szczeg\u00f3\u0142y i naprawa krok po kroku<\/a>.<\/p>\n<h3>62. Wtyczka cache psuje koszyk albo logowanie<\/h3>\n<p>Cache pe\u0142nych stron zapisuje strony, kt\u00f3re musz\u0105 by\u0107 inne dla ka\u017cdego klienta: koszyk, zam\u00f3wienie, konto i strony ogl\u0105dane przez osoby z produktami w koszyku. Klient widzi wtedy pusty koszyk, cudze dane albo nie mo\u017ce si\u0119 zalogowa\u0107. Charakterystyczne jest to, \u017ce problem znika po wyczyszczeniu cache, a potem wraca.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw wykluczenia dla stron koszyka, zam\u00f3wienia i konta oraz dla ciasteczek WooCommerce albo u\u017cyj wtyczki cache z gotowym profilem dla WooCommerce. Te same wykluczenia dodaj w cache serwera i CDN.<\/p>\n<h3>63. Panel administracyjny WooCommerce dzia\u0142a bardzo wolno<\/h3>\n<p>Przyczyn\u0105 bywaj\u0105 setki tysi\u0119cy wpis\u00f3w w tabeli opcji (dane tymczasowe, sesje), logi wtyczek, zam\u00f3wienia w tabelach wpis\u00f3w i ci\u0119\u017ckie wid\u017cety w kokpicie. Ka\u017cde wej\u015bcie do panelu \u0142aduje te dane, a s\u0142aby hosting tego nie wytrzymuje. Lista zam\u00f3wie\u0144 albo edycja produktu \u0142aduje si\u0119 bardzo d\u0142ugo.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wyczy\u015b\u0107 wygas\u0142e dane tymczasowe i stare logi, w\u0142\u0105cz nowe tabele zam\u00f3wie\u0144 (HPOS, problem 64) i cache obiekt\u00f3w na serwerze. Wtyczk\u0105 diagnostyczn\u0105 (np. Query Monitor) sprawd\u017a, kt\u00f3ra wtyczka spowalnia panel.<\/p>\n<h3>64. Jak prze\u0142\u0105czy\u0107 WooCommerce na nowe tabele zam\u00f3wie\u0144 (HPOS)?<\/h3>\n<p>Nowe przechowywanie zam\u00f3wie\u0144 (HPOS) jest domy\u015blne w nowych sklepach od wersji 8.2, ale starsze sklepy nadal trzymaj\u0105 zam\u00f3wienia w tabelach wpis\u00f3w WordPressa, co spowalnia panel i wyszukiwanie zam\u00f3wie\u0144. Prze\u0142\u0105czenie wymaga zgodno\u015bci wszystkich wtyczek, kt\u00f3re operuj\u0105 na zam\u00f3wieniach. Stan sprawdzisz w WooCommerce, Ustawienia, Zaawansowane, Funkcje.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zr\u00f3b kopi\u0119 zapasow\u0105, sprawd\u017a zgodno\u015b\u0107 wtyczek z HPOS, w\u0142\u0105cz synchronizacj\u0119 zam\u00f3wie\u0144 i poczekaj na jej zako\u0144czenie. Dopiero potem prze\u0142\u0105cz sklep na nowe tabele i przetestuj sk\u0142adanie oraz edycj\u0119 zam\u00f3wie\u0144.<\/p>\n<h3>65. Strona sklepu przeskakuje podczas \u0142adowania (CLS)<\/h3>\n<p>Elementy pojawiaj\u0105 si\u0119 z op\u00f3\u017anieniem i przesuwaj\u0105 tre\u015b\u0107: obrazki bez wymiar\u00f3w, banery promocyjne, czcionki i baner cookies wstawiany nad tre\u015bci\u0105. Klient klika w jedno miejsce, a trafia w inne, np. w z\u0142y wariant. Google mierzy to wska\u017anikiem CLS, a dobry wynik to do 0,1.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> nadaj obrazkom atrybuty width i height, zarezerwuj miejsce na banery i suwaki, \u0142aduj czcionki z dopasowanymi zamiennikami, a baner cookies wy\u015bwietlaj jako nak\u0142adk\u0119, kt\u00f3ra nie przesuwa tre\u015bci.<\/p>\n<h3>66. Sklep wolno reaguje na klikni\u0119cia (INP)<\/h3>\n<p>D\u0142ugie zadania JavaScript blokuj\u0105 przegl\u0105dark\u0119, wi\u0119c po klikni\u0119ciu w wariant, filtr czy przycisk przez chwil\u0119 nic si\u0119 nie dzieje. Najcz\u0119\u015bciej winne s\u0105 suwaki, czaty, skrypty \u015bledz\u0105ce i kreatory stron. Google mierzy to wska\u017anikiem INP, a dobry wynik to do 200 milisekund.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w raporcie PageSpeed Insights sprawd\u017a, kt\u00f3re skrypty najd\u0142u\u017cej blokuj\u0105 przegl\u0105dark\u0119. Usu\u0144 nieu\u017cywane, op\u00f3\u017anij \u0142adowanie tych, kt\u00f3re nie s\u0105 potrzebne od razu (czat, piksele), i ogranicz liczb\u0119 skrypt\u00f3w na stronie zam\u00f3wienia.<\/p>\n<h3>67. Zapytania wc-ajax koszyka obci\u0105\u017caj\u0105 serwer<\/h3>\n<p>W motywach z mini koszykiem fragmenty koszyka s\u0105 od\u015bwie\u017cane zapytaniem do serwera na wielu stronach, nawet gdy koszyk jest pusty. Te zapytania omijaj\u0105 cache, wi\u0119c przy wi\u0119kszym ruchu obci\u0105\u017caj\u0105 serwer i spowalniaj\u0105 \u0142adowanie. W narz\u0119dziach przegl\u0105darki wida\u0107 je jako \u017c\u0105dania z parametrem wc-ajax=get_refreshed_fragments.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ogranicz od\u015bwie\u017canie fragment\u00f3w do sytuacji, gdy koszyk ma produkty, albo do stron, na kt\u00f3rych wida\u0107 mini koszyk. Mo\u017cesz te\u017c u\u017cy\u0107 motywu, kt\u00f3ry pokazuje licznik koszyka bez tych \u017c\u0105da\u0144.<\/p>\n<h3>68. Filtry produkt\u00f3w przeci\u0105\u017caj\u0105 serwer<\/h3>\n<p>Ka\u017cda kombinacja filtr\u00f3w to nowy adres i nowe, ci\u0119\u017ckie zapytanie do bazy, a roboty wyszukiwarek i boty pr\u00f3buj\u0105 je wszystkie. Liczba adres\u00f3w ro\u015bnie wtedy bardzo szybko i serwer zajmuje si\u0119 g\u0142\u00f3wnie robotami. Wida\u0107 to po wysokim obci\u0105\u017ceniu przy ma\u0142ym ruchu klient\u00f3w i masie adres\u00f3w z parametrami w Search Console.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zablokuj indeksowanie adres\u00f3w z filtrami (noindex lub regu\u0142y w robots.txt dla parametr\u00f3w) i u\u017cyj wydajnej wtyczki filtr\u00f3w z w\u0142asnym indeksem zamiast liczenia wszystkiego przy ka\u017cdym wej\u015bciu.<\/p>\n<h3>69. Sklep przestaje dzia\u0142a\u0107 w czasie promocji<\/h3>\n<p>Kampanie, newsletter i wyprzeda\u017ce przynosz\u0105 nag\u0142e skoki ruchu, a hosting nie ma zapasu zasob\u00f3w. Strony koszyka i zam\u00f3wienia nie korzystaj\u0105 z cache, wi\u0119c to one padaj\u0105 pierwsze, i to w najwa\u017cniejszym momencie. Pojawiaj\u0105 si\u0119 b\u0142\u0119dy 502 lub 503 albo sklep dzia\u0142a bardzo wolno.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przed promocj\u0105 przetestuj obci\u0105\u017cenie na kopii sklepu, w\u0142\u0105cz cache stron, cache obiekt\u00f3w i CDN dla plik\u00f3w statycznych oraz ustal z hostingiem mo\u017cliwo\u015b\u0107 czasowego zwi\u0119kszenia zasob\u00f3w.<\/p>\n<h3>70. Kopia zapasowa spowalnia sklep w ci\u0105gu dnia<\/h3>\n<p>Kopie robione wtyczk\u0105 w godzinach ruchu kompresuj\u0105 pliki i baz\u0119 na tym samym serwerze, kt\u00f3ry obs\u0142uguje klient\u00f3w. Sklep zwalnia albo na kilka minut przestaje odpowiada\u0107, a klienci w tym czasie porzucaj\u0105 koszyki. Charakterystyczne s\u0105 spowolnienia codziennie o tej samej porze, zgodne z harmonogramem wtyczki do kopii.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przenie\u015b kopie na noc albo korzystaj z kopii robionych przez hosting na poziomie serwera. Niezale\u017cnie od metody co jaki\u015b czas sprawdzaj, czy kopi\u0119 da si\u0119 odtworzy\u0107 na kopii sklepu.<\/p>\n<h2>Bezpiecze\u0144stwo i aktualizacje<\/h2>\n<p>Sklep przechowuje dane klient\u00f3w i zam\u00f3wie\u0144, wi\u0119c jest cz\u0119stszym celem atak\u00f3w ni\u017c zwyk\u0142a strona.<\/p>\n<h3>71. Sklep WooCommerce zosta\u0142 zhakowany albo przekierowuje na obce strony<\/h3>\n<p>Najcz\u0119\u015bciej to skutek nieaktualnej wtyczki z luk\u0105, wtyczki z nielegalnego \u017ar\u00f3d\u0142a albo s\u0142abego has\u0142a administratora. Objawy to przekierowania na obce strony (cz\u0119sto tylko na telefonie lub z Google), nowe konta administrator\u00f3w, obce pliki na serwerze i ostrze\u017cenia w przegl\u0105darce. Ka\u017cda godzina zw\u0142oki zwi\u0119ksza szkody.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> odtw\u00f3rz czyst\u0105 kopi\u0119 sprzed ataku, zmie\u0144 wszystkie has\u0142a oraz klucze w wp-config.php, zaktualizuj wszystko i usu\u0144 nieu\u017cywane wtyczki. Szczeg\u00f3\u0142y w poradniku <a href=\"\/blog\/wordpress-zhakowany-co-robic-7-krokow-do-odzyskania-strony\/\">WordPress zhakowany: co robi\u0107<\/a>.<\/p>\n<h3>72. Boty sk\u0142adaj\u0105 fa\u0142szywe zam\u00f3wienia i testuj\u0105 karty<\/h3>\n<p>Boty u\u017cywaj\u0105 formularza zam\u00f3wienia, \u017ceby sprawdzi\u0107, kt\u00f3re skradzione karty dzia\u0142aj\u0105. Wida\u0107 seri\u0119 nieudanych zam\u00f3wie\u0144 z ma\u0142ymi kwotami, przypadkowymi danymi i r\u00f3\u017cnymi kartami w kr\u00f3tkim czasie. Skutkiem mog\u0105 by\u0107 op\u0142aty za nieudane transakcje u operatora, a nawet blokada konta p\u0142atno\u015bci, kt\u00f3ra zatrzymuje ca\u0142\u0105 sprzeda\u017c.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w\u0142\u0105cz ochron\u0119 formularza zam\u00f3wienia (np. reCAPTCHA lub Cloudflare Turnstile), limity pr\u00f3b p\u0142atno\u015bci oraz regu\u0142y antyfraudowe u operatora. Poinformuj operatora o ataku i anuluj fa\u0142szywe zam\u00f3wienia.<\/p>\n<h3>73. Masowe rejestracje fa\u0142szywych kont w sklepie<\/h3>\n<p>Formularz rejestracji bez zabezpiecze\u0144 przyci\u0105ga boty, kt\u00f3re zak\u0142adaj\u0105 konta do spamu albo testowania danych logowania. Baza klient\u00f3w puchnie, a maile powitalne trafiaj\u0105 na przypadkowe adresy i psuj\u0105 reputacj\u0119 domeny. Objaw: wiele nowych kont dziennie bez \u017cadnych zam\u00f3wie\u0144.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wy\u0142\u0105cz rejestracj\u0119 na stronie Moje konto, je\u015bli nie jest potrzebna, dodaj ochron\u0119 antyspamow\u0105 do formularzy konta i usu\u0144 fa\u0142szywe konta. Sprawd\u017a, czy \u017cadne z nich nie ma roli wy\u017cszej ni\u017c Klient.<\/p>\n<h3>74. Wtyczki w sklepie nie by\u0142y aktualizowane od miesi\u0119cy<\/h3>\n<p>Nieaktualne wtyczki to najcz\u0119stsza droga ataku na sklepy na WordPressie, bo opisane luki s\u0105 publicznie znane, a boty szukaj\u0105 ich automatycznie. Aktualizacje odk\u0142ada si\u0119 zwykle ze strachu, \u017ce co\u015b si\u0119 zepsuje. W kokpicie lista aktualizacji czeka od tygodni.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustal sta\u0142y rytm aktualizacji, np. co tydzie\u0144, aktualizuj najpierw na kopii sklepu, a przed aktualizacj\u0105 dzia\u0142aj\u0105cego sklepu r\u00f3b kopi\u0119 zapasow\u0105. Poprawki bezpiecze\u0144stwa instaluj od razu, bez czekania na termin.<\/p>\n<h3>75. Licencje wtyczek premium wygas\u0142y<\/h3>\n<p>Bez aktywnej licencji wtyczka premium nie dostaje aktualizacji, w tym poprawek bezpiecze\u0144stwa i zgodno\u015bci z now\u0105 wersj\u0105 WooCommerce. Cz\u0119sto nikt nie wie, na kogo kupiono licencj\u0119 i kiedy wygasa. Wtyczka pokazuje komunikat o licencji, a jej wersja jest du\u017co starsza od aktualnej.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zr\u00f3b list\u0119 licencji z kontem, na kt\u00f3re je kupiono, i dat\u0105 odnowienia. Odnawiaj te potrzebne, a wtyczki, kt\u00f3rych nie chcesz op\u0142aca\u0107, zast\u0105p innymi lub usu\u0144.<\/p>\n<h3>76. Wszyscy w firmie maj\u0105 konto administratora<\/h3>\n<p>Ka\u017cde konto administratora to dodatkowe ryzyko: przej\u0119cie jednego has\u0142a daje pe\u0142ny dost\u0119p do sklepu, danych klient\u00f3w i plik\u00f3w. Pracownik obs\u0142uguj\u0105cy zam\u00f3wienia nie potrzebuje uprawnie\u0144 do wtyczek i ustawie\u0144. Cz\u0119sto na li\u015bcie administrator\u00f3w s\u0105 te\u017c osoby, kt\u00f3re ju\u017c nie pracuj\u0105 w firmie, oraz konta wykonawc\u00f3w z dawno zako\u0144czonych zlece\u0144.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> nadaj pracownikom rol\u0119 Kierownik sklepu albo w\u0119\u017csze uprawnienia, usu\u0144 konta by\u0142ych pracownik\u00f3w i w\u0142\u0105cz logowanie dwusk\u0142adnikowe dla wszystkich administrator\u00f3w.<\/p>\n<h3>77. Kopie zapasowe sklepu le\u017c\u0105 na tym samym serwerze<\/h3>\n<p>Kopia trzymana na serwerze sklepu znika razem z nim przy awarii, ataku albo zako\u0144czeniu umowy z hostingiem. Z\u0142o\u015bliwe oprogramowanie potrafi te\u017c zainfekowa\u0107 lub usun\u0105\u0107 kopie le\u017c\u0105ce obok. Typowa sytuacja: kopie s\u0105 tylko w folderze wtyczki w wp-content i nikt nigdy nie pr\u00f3bowa\u0142 ich odtworzy\u0107.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przechowuj kopie w osobnym miejscu (np. w chmurze), z kilkoma wersjami wstecz. Co jaki\u015b czas odtw\u00f3rz kopi\u0119 w \u015brodowisku testowym, \u017ceby mie\u0107 pewno\u015b\u0107, \u017ce dzia\u0142a.<\/p>\n<h3>78. Dane klient\u00f3w s\u0105 widoczne w logach albo adresach URL<\/h3>\n<p>Niekt\u00f3re wtyczki zapisuj\u0105 w logach pe\u0142ne dane zam\u00f3wie\u0144, a pliki log\u00f3w bywaj\u0105 dost\u0119pne z internetu. Inne przekazuj\u0105 e-mail lub dane klienta w adresach URL, kt\u00f3re trafiaj\u0105 do analityki i narz\u0119dzi zewn\u0119trznych. To ryzyko naruszenia ochrony danych osobowych w rozumieniu RODO.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wy\u0142\u0105cz szczeg\u00f3\u0142owe logowanie wtyczek, gdy nie diagnozujesz problemu, zablokuj dost\u0119p z internetu do katalog\u00f3w z logami i sprawd\u017a, czy adresy stron podzi\u0119kowania nie zawieraj\u0105 danych osobowych.<\/p>\n<h3>79. O awarii sklepu dowiaduj\u0119 si\u0119 od klient\u00f3w<\/h3>\n<p>Sklep nie ma monitoringu, wi\u0119c awaria w nocy albo w weekend trwa, dop\u00f3ki kto\u015b jej przypadkiem nie zauwa\u017cy. Ka\u017cda godzina niedzia\u0142aj\u0105cego sklepu to utracone zam\u00f3wienia i gorsze wra\u017cenie u klient\u00f3w. Cz\u0119\u015bciowe awarie, np. niedzia\u0142aj\u0105ca p\u0142atno\u015b\u0107, s\u0105 jeszcze trudniejsze do wykrycia.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw monitoring dost\u0119pno\u015bci z powiadomieniem mailowym, sprawdzaj\u0105cy stron\u0119 g\u0142\u00f3wn\u0105 i stron\u0119 zam\u00f3wienia, oraz powiadomienia o b\u0142\u0119dach krytycznych. Co jaki\u015b czas przejd\u017a ca\u0142\u0105 \u015bcie\u017ck\u0119 zakupu zam\u00f3wieniem testowym.<\/p>\n<h3>80. Po aktualizacji WooCommerce zmieni\u0142 si\u0119 wygl\u0105d sklepu<\/h3>\n<p>Motyw nadpisuje szablony WooCommerce, kt\u00f3re przesta\u0142y pasowa\u0107 do nowej wersji, wi\u0119c elementy znikaj\u0105 lub wygl\u0105daj\u0105 inaczej. WooCommerce oznacza je w Statusie systemu jako przestarza\u0142e szablony w motywie. Po aktualizacji rozje\u017cd\u017ca si\u0119 karta produktu, koszyk albo maile, a czasem znikaj\u0105 elementy dodane przez nowsze wersje WooCommerce.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Status, Status systemu sprawd\u017a sekcj\u0119 szablon\u00f3w i list\u0119 przestarza\u0142ych plik\u00f3w. Zaktualizuj motyw albo popraw nadpisane szablony w motywie potomnym na podstawie nowych wersji.<\/p>\n<h2>Widoczno\u015b\u0107 w Google, reklamach i AI<\/h2>\n<p>Sklep, kt\u00f3rego nie wida\u0107 w Google, w reklamach i w odpowiedziach asystent\u00f3w AI, sprzedaje tylko z p\u0142atnego ruchu.<\/p>\n<h3>81. Sklep nie pojawia si\u0119 w Google<\/h3>\n<p>Najcz\u0119\u015bciej witryna jest ukryta przed wyszukiwarkami w Ustawieniach, Czytanie (opcja zostaje po budowie sklepu), zablokowana w robots.txt albo nie zosta\u0142a dodana do Google Search Console. Nowy sklep potrzebuje te\u017c czasu i link\u00f3w, \u017ceby Google go odwiedzi\u0142. Wyszukanie site:twojadomena.pl nie zwraca wtedy wynik\u00f3w.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> odznacz pro\u015bb\u0119 o nieindeksowanie w Ustawieniach, Czytanie, sprawd\u017a robots.txt, dodaj sklep do Google Search Console, zg\u0142o\u015b map\u0119 witryny i obserwuj raport indeksowania stron.<\/p>\n<h3>82. Produkty nie maj\u0105 ceny i ocen w wynikach Google<\/h3>\n<p>Brakuje poprawnych danych strukturalnych Product albo s\u0105 w nich b\u0142\u0119dy, np. brak ceny, waluty lub dost\u0119pno\u015bci. Motywy i wtyczki SEO cz\u0119sto generuj\u0105 dane niepe\u0142ne albo zdublowane. Search Console pokazuje wtedy b\u0142\u0119dy lub ostrze\u017cenia w raportach o produktach.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> sprawd\u017a kart\u0119 produktu w Te\u015bcie wynik\u00f3w z elementami rozszerzonymi, usu\u0144 zdublowane dane strukturalne (z motywu i wtyczki naraz) i uzupe\u0142nij brakuj\u0105ce pola: cena, waluta, dost\u0119pno\u015b\u0107, opinie, marka i identyfikator produktu.<\/p>\n<h3>83. Te same produkty s\u0105 pod wieloma adresami (duplikaty tre\u015bci)<\/h3>\n<p>Warianty, filtry, sortowanie i parametry kampanii tworz\u0105 wiele adres\u00f3w z t\u0105 sam\u0105 tre\u015bci\u0105, a produkt w kilku kategoriach mo\u017ce mie\u0107 kilka \u015bcie\u017cek. Google musi zgadywa\u0107, kt\u00f3ry adres pokaza\u0107, i dzieli mi\u0119dzy nie sygna\u0142y. W Search Console pojawiaj\u0105 si\u0119 strony oznaczone jako duplikaty bez wskazanej wersji kanonicznej.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw adresy kanoniczne na g\u0142\u00f3wne wersje produkt\u00f3w i kategorii, noindex dla wynik\u00f3w filtrowania i sortowania oraz jeden adres produktu, niezale\u017cny od kategorii.<\/p>\n<h3>84. Kategorie sklepu nie wychodz\u0105 wysoko w Google<\/h3>\n<p>Strona kategorii to cz\u0119sto najwa\u017cniejsza strona sprzeda\u017cowa, ale ma tylko siatk\u0119 produkt\u00f3w bez tekstu, wi\u0119c Google nie wie, na jakie pytania odpowiada. Kategorie z kilkoma produktami albo puste dodatkowo os\u0142abiaj\u0105 sklep. W wynikach wy\u015bwietlaj\u0105 si\u0119 wtedy pojedyncze produkty albo kategorie konkurencji.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj kr\u00f3tki opis nad list\u0105 produkt\u00f3w i poradnik pod ni\u0105, odpowiadaj\u0105cy na pytania klient\u00f3w o t\u0119 kategori\u0119 (jak wybra\u0107, czym si\u0119 r\u00f3\u017cni\u0105 modele). Ustaw unikalny tytu\u0142 i opis meta dla ka\u017cdej kategorii.<\/p>\n<h3>85. Produkty s\u0105 odrzucane w Google Merchant Center<\/h3>\n<p>Najcz\u0119stsze powody to r\u00f3\u017cna cena lub dost\u0119pno\u015b\u0107 w pliku produktowym i na stronie, brak identyfikator\u00f3w (GTIN, marka) albo brak zasad zwrot\u00f3w i wysy\u0142ki na koncie. Odrzucone produkty nie wy\u015bwietlaj\u0105 si\u0119 w kampaniach produktowych ani w bezp\u0142atnych wynikach w zak\u0142adce Zakupy. Szczeg\u00f3\u0142y pokazuje diagnostyka Merchant Center.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> popraw plik produktowy tak, by dane pochodzi\u0142y bezpo\u015brednio ze sklepu, uzupe\u0142nij GTIN i mark\u0119, dodaj zasady zwrot\u00f3w i wysy\u0142ki w Merchant Center, a potem popro\u015b o ponowne sprawdzenie produkt\u00f3w.<\/p>\n<h3>86. Google Ads nie pokazuje sprzeda\u017cy ze sklepu<\/h3>\n<p>Konwersje nie s\u0105 mierzone, s\u0105 liczone bez warto\u015bci albo podw\u00f3jnie, bo zakup mierzy jednocze\u015bnie tag Google Ads i import z GA4. Kampanie optymalizuj\u0105 si\u0119 wtedy pod z\u0142e dane. W Google Ads wida\u0107 klikni\u0119cia, ale brak konwersji albo ich liczba nie zgadza si\u0119 z zam\u00f3wieniami.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wdr\u00f3\u017c pomiar zakupu z warto\u015bci\u0105 i identyfikatorem zam\u00f3wienia przez GA4 lub tag Google Ads, z Consent Mode v2, i wybierz jedno g\u0142\u00f3wne \u017ar\u00f3d\u0142o konwersji. Por\u00f3wnaj liczb\u0119 konwersji z zam\u00f3wieniami z tego samego okresu.<\/p>\n<h3>87. Google Analytics pokazuje inne przychody ni\u017c sklep<\/h3>\n<p>Pewne r\u00f3\u017cnice s\u0105 normalne: cz\u0119\u015b\u0107 klient\u00f3w nie zgadza si\u0119 na cookies, zam\u00f3wienia op\u0142acane u zewn\u0119trznego operatora wracaj\u0105 bez sesji, a zakup mo\u017ce si\u0119 liczy\u0107 przy ka\u017cdym od\u015bwie\u017ceniu strony podzi\u0119kowania. Zwroty i anulowane zam\u00f3wienia nie s\u0105 te\u017c odejmowane automatycznie. Problemem s\u0105 dopiero du\u017ce albo rosn\u0105ce rozbie\u017cno\u015bci.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wysy\u0142aj zdarzenie zakupu raz na zam\u00f3wienie, z identyfikatorem transakcji, dodaj domen\u0119 operatora p\u0142atno\u015bci do wyklucze\u0144 odes\u0142a\u0144 i por\u00f3wnuj trendy, a nie kwoty co do z\u0142ot\u00f3wki.<\/p>\n<h3>88. ChatGPT i asystenci AI nie polecaj\u0105 mojego sklepu<\/h3>\n<p>Asystenci AI korzystaj\u0105 z tre\u015bci, kt\u00f3re \u0142atwo zrozumie\u0107 i zweryfikowa\u0107: jasnych opis\u00f3w produkt\u00f3w, danych strukturalnych, opinii, odpowiedzi na pytania i wzmianek o sklepie w innych miejscach. Sklep z opisami od producenta i bez informacji o firmie nie ma im czego zaoferowa\u0107. Czasem roboty AI s\u0105 te\u017c blokowane w robots.txt lub przez zapor\u0119.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> uzupe\u0142nij opisy i FAQ, dodaj dane strukturalne, sprawd\u017a dost\u0119p bot\u00f3w AI i dodaj plik llms.txt. Stan sklepu sprawdzisz bezp\u0142atnie w <a href=\"https:\/\/codescriptum.pl\/audyt-geo\/\">audycie GEO<\/a>.<\/p>\n<h3>89. Po migracji sklepu spad\u0142 ruch z Google<\/h3>\n<p>Zmieni\u0142y si\u0119 adresy produkt\u00f3w i kategorii, a nie ustawiono przekierowa\u0144 301 ze starych adres\u00f3w na nowe. Google i klienci trafiaj\u0105 na b\u0142\u0119dy 404, a pozycje budowane latami przepadaj\u0105. Spadek pojawia si\u0119 zwykle w ci\u0105gu kilku dni po przeniesieniu sklepu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przed migracj\u0105 przygotuj map\u0119 starych i nowych adres\u00f3w, ustaw przekierowania 301 dla ka\u017cdego adresu z ruchem lub linkami, zg\u0142o\u015b now\u0105 map\u0119 witryny i obserwuj b\u0142\u0119dy 404 w Search Console. Je\u015bli migracja ju\u017c si\u0119 odby\u0142a, dodaj brakuj\u0105ce przekierowania jak najszybciej.<\/p>\n<h3>90. Usuni\u0119te produkty daj\u0105 b\u0142\u0119dy 404<\/h3>\n<p>Produkty, kt\u00f3rych ju\u017c nie sprzedajesz, by\u0142y w Google, maj\u0105 linki i zapisane zak\u0142adki klient\u00f3w. Usuni\u0119cie produktu bez przekierowania tworzy b\u0142\u0105d 404 i traci ruch tej strony. W Search Console ro\u015bnie liczba b\u0142\u0119d\u00f3w 404 po porz\u0105dkach w katalogu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> przekieruj usuni\u0119te produkty przekierowaniem 301 na nast\u0119pc\u0119 albo najbli\u017csz\u0105 kategori\u0119. Produkty czasowo niedost\u0119pne zostaw na stronie z informacj\u0105 o braku i mo\u017cliwo\u015bci\u0105 zapisu na powiadomienie o dost\u0119pno\u015bci.<\/p>\n<h2>Integracje, maile i obs\u0142uga zam\u00f3wie\u0144<\/h2>\n<p>Gdy sklep ro\u015bnie, r\u0119czna obs\u0142uga zam\u00f3wie\u0144 przestaje si\u0119 skalowa\u0107. Integracje oszcz\u0119dzaj\u0105 czas, ale same te\u017c bywaj\u0105 \u017ar\u00f3d\u0142em b\u0142\u0119d\u00f3w.<\/p>\n<h3>91. Stany magazynowe nie zgadzaj\u0105 si\u0119 mi\u0119dzy sklepem a Allegro<\/h3>\n<p>Sprzeda\u017c w dw\u00f3ch kana\u0142ach bez synchronizacji ko\u0144czy si\u0119 sprzeda\u017c\u0105 produktu, kt\u00f3rego ju\u017c nie ma, i anulowaniem zam\u00f3wienia. R\u0119czne poprawianie stan\u00f3w nie nad\u0105\u017ca przy wi\u0119kszej liczbie zam\u00f3wie\u0144. Typowa sytuacja: zam\u00f3wienie na Allegro na produkt, kt\u00f3ry chwil\u0119 wcze\u015bniej kupiono w sklepie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> po\u0142\u0105cz kana\u0142y przez system do zarz\u0105dzania sprzeda\u017c\u0105 (np. BaseLinker) albo integracj\u0119 z magazynem i ustal jedno \u017ar\u00f3d\u0142o stan\u00f3w. Ustaw cz\u0119st\u0105 synchronizacj\u0119 i rezerw\u0119 stan\u00f3w dla produkt\u00f3w, kt\u00f3re sprzedaj\u0105 si\u0119 najszybciej.<\/p>\n<h3>92. Zam\u00f3wienia z WooCommerce nie trafiaj\u0105 do programu ksi\u0119gowego<\/h3>\n<p>Dane s\u0105 przepisywane r\u0119cznie albo eksport nie obejmuje rabat\u00f3w, koszt\u00f3w dostawy i NIP. Ksi\u0119gowo\u015b\u0107 dostaje niepe\u0142ne dane, a dokumenty trzeba poprawia\u0107. Pojawiaj\u0105 si\u0119 r\u00f3\u017cnice mi\u0119dzy sum\u0105 zam\u00f3wie\u0144 w sklepie a sprzeda\u017c\u0105 w ksi\u0119gowo\u015bci, a ich wyja\u015bnianie na koniec miesi\u0105ca zabiera czas ksi\u0119gowo\u015bci i obs\u0142udze sklepu.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> u\u017cyj integracji, kt\u00f3ra przekazuje pe\u0142ne zam\u00f3wienie z NIP, rabatami, dostaw\u0105 i sposobem p\u0142atno\u015bci, najlepiej z obs\u0142ug\u0105 KSeF (problem 59). Po wdro\u017ceniu por\u00f3wnaj kilka dokument\u00f3w z zam\u00f3wieniami.<\/p>\n<h3>93. Maile WooCommerce wygl\u0105daj\u0105 nieprofesjonalnie<\/h3>\n<p>Domy\u015blne maile maj\u0105 angielskie elementy, brak logo i og\u00f3lne tre\u015bci, kt\u00f3re nie m\u00f3wi\u0105 klientowi, co dalej. Dostaje je ka\u017cdy kupuj\u0105cy, wi\u0119c to wa\u017cny element wra\u017cenia po zakupie. Klienci pytaj\u0105 potem o rzeczy, kt\u00f3re powinny by\u0107 w mailu, np. czas wysy\u0142ki i zwroty.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> w WooCommerce, Ustawienia, E-maile dodaj logo, kolory i polskie teksty, a w tre\u015bci umie\u015b\u0107 czas wysy\u0142ki, adres e-mail obs\u0142ugi klienta i link do informacji o zwrotach. Sprawd\u017a t\u0142umaczenia wtyczek, kt\u00f3re wysy\u0142aj\u0105 w\u0142asne maile.<\/p>\n<h3>94. Sklep nie przypomina klientom o porzuconym koszyku<\/h3>\n<p>WooCommerce nie wysy\u0142a domy\u015blnie przypomnie\u0144 o porzuconym koszyku, wi\u0119c klienci, kt\u00f3rzy zostawili produkty, nie wracaj\u0105. Przypomnienie mo\u017cna wys\u0142a\u0107 tylko osobie, kt\u00f3ra poda\u0142a e-mail, a do tre\u015bci marketingowych potrzebna jest zgoda. W statystykach wida\u0107 wiele rozpocz\u0119tych zam\u00f3wie\u0144 bez zakupu, a sklep nie robi nic, \u017ceby tych klient\u00f3w odzyska\u0107.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> wdr\u00f3\u017c przypomnienia mailowe dla os\u00f3b, kt\u00f3re poda\u0142y e-mail i zgod\u0119, z linkiem odtwarzaj\u0105cym koszyk. Wysy\u0142aj najwy\u017cej kilka przypomnie\u0144 i sprawdzaj, ile koszyk\u00f3w wraca.<\/p>\n<h3>95. Statusy zam\u00f3wie\u0144 nie pasuj\u0105 do pracy magazynu<\/h3>\n<p>Domy\u015blne statusy WooCommerce nie obejmuj\u0105 kompletowania, oczekiwania na towar od dostawcy, wys\u0142ania czy reklamacji. Pracownicy u\u017cywaj\u0105 wtedy notatek albo arkuszy obok sklepu, a klient nie wie, co si\u0119 dzieje z zam\u00f3wieniem. Wiele zam\u00f3wie\u0144 wisi w statusie \u201eW trakcie realizacji\u201d bez informacji o etapie.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> dodaj w\u0142asne statusy dopasowane do procesu (np. \u201eKompletowane\u201d, \u201eWys\u0142ane\u201d, \u201eReklamacja\u201d) i maile do klienta przy ich zmianie. Upewnij si\u0119, \u017ce integracje kuriera i ksi\u0119gowo\u015bci rozpoznaj\u0105 nowe statusy.<\/p>\n<h3>96. Faktury i numery przesy\u0142ek wysy\u0142amy klientom r\u0119cznie<\/h3>\n<p>Pracownik pobiera faktur\u0119, sprawdza numer przesy\u0142ki i pisze maila do ka\u017cdego klienta osobno. To powtarzalna praca, kt\u00f3ra przy wi\u0119kszej liczbie zam\u00f3wie\u0144 zajmuje du\u017co czasu i daje pomy\u0142ki. Klienci dostaj\u0105 informacje z op\u00f3\u017anieniem albo wcale.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> po\u0142\u0105cz zmian\u0119 statusu zam\u00f3wienia z automatycznym mailem zawieraj\u0105cym faktur\u0119 i link do \u015bledzenia przesy\u0142ki. Bardziej z\u0142o\u017cone zadania przenie\u015b do automatyzacji (np. n8n) po\u0142\u0105czonej ze sklepem, programem do faktur i kurierem.<\/p>\n<h3>97. Integracja z hurtowni\u0105 nadpisuje ceny i opisy<\/h3>\n<p>Import z hurtowni uruchamiany co kilka godzin aktualizuje wszystkie pola produktu, wi\u0119c nadpisuje Twoje opisy, zdj\u0119cia, nazwy i mar\u017ce. Praca w\u0142o\u017cona w tre\u015bci znika po ka\u017cdej synchronizacji. Poprawione opisy wracaj\u0105 do wersji z hurtowni.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustaw w integracji, kt\u00f3re pola aktualizuje (zwykle stan i cena zakupu), a kt\u00f3re s\u0105 zarz\u0105dzane w sklepie (nazwa, opis, zdj\u0119cia, cena sprzeda\u017cy). Cen\u0119 sprzeda\u017cy wyliczaj regu\u0142\u0105 mar\u017cy, a nie importem.<\/p>\n<h3>98. Sklep WooCommerce nie przekazuje danych do CRM<\/h3>\n<p>Dane klient\u00f3w i zam\u00f3wie\u0144 s\u0105 w sklepie, a korespondencja, oferty i zg\u0142oszenia w osobnym miejscu. Obs\u0142uga klienta nie widzi historii zakup\u00f3w, a dzia\u0142ania posprzeda\u017cowe robi si\u0119 r\u0119cznie albo wcale. Te same dane klienta kr\u0105\u017c\u0105 w kilku arkuszach.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> po\u0142\u0105cz sklep z CRM przez integracj\u0119 lub automatyzacj\u0119, tak aby nowe zam\u00f3wienia i klienci trafiali do CRM z histori\u0105 zakup\u00f3w. Na tej podstawie zaplanuj dzia\u0142ania posprzeda\u017cowe, np. przypomnienie o ponownym zakupie.<\/p>\n<h3>99. Rabaty i programy lojalno\u015bciowe nak\u0142adaj\u0105 si\u0119 na siebie<\/h3>\n<p>Kilka wtyczek promocyjnych dzia\u0142a niezale\u017cnie i nak\u0142ada rabaty jeden na drugi: kupon, rabat ilo\u015bciowy, punkty lojalno\u015bciowe i promocja na produkt. Klient dostaje cen\u0119 poni\u017cej kosztu, a sklep orientuje si\u0119 dopiero przy rozliczeniu. W zam\u00f3wieniach wida\u0107 \u0142\u0105czny rabat znacznie wy\u017cszy ni\u017c zak\u0142adany.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> ustal zasady \u0142\u0105czenia promocji (kt\u00f3re si\u0119 sumuj\u0105, a kt\u00f3re nie) i u\u017cywaj jednego narz\u0119dzia do rabat\u00f3w. Ka\u017cd\u0105 promocj\u0119 testuj przed startem na koszyku z kuponem i produktami w promocji.<\/p>\n<h3>100. Kiedy WooCommerce przestaje wystarcza\u0107?<\/h3>\n<p>Przy du\u017cej liczbie produkt\u00f3w i wariant\u00f3w, nietypowych procesach (np. konfiguratory, B2B z indywidualnymi cennikami) albo integracjach z wieloma systemami WooCommerce wymaga coraz wi\u0119cej wtyczek i obej\u015b\u0107. Cz\u0119sto jednak problemem nie jest platforma, tylko hosting, nadmiar wtyczek i brak optymalizacji, wi\u0119c warto to sprawdzi\u0107 przed decyzj\u0105.<\/p>\n<p><strong>Rozwi\u0105zanie:<\/strong> zr\u00f3b audyt wydajno\u015bci i proces\u00f3w, por\u00f3wnaj <a href=\"\/blog\/woocommerce-vs-shopify-vs-prestashop-porownanie-platform-e-commerce-2026\/\">WooCommerce, Shopify i PrestaShop<\/a> i rozwa\u017c WooCommerce z w\u0142asnymi modu\u0142ami albo sklep dedykowany dopiero wtedy, gdy usuni\u0119cie w\u0105skich garde\u0142 nie wystarcza.<\/p>\n<h2>Od czego zacz\u0105\u0107, je\u015bli problem\u00f3w jest du\u017co<\/h2>\n<p>Najpierw prawo i p\u0142atno\u015bci (problemy 31-40 i 51-60), bo kosztuj\u0105 najwi\u0119cej. Potem szybko\u015b\u0107 i koszyk (21-30 i 61-70), bo wp\u0142ywaj\u0105 na sprzeda\u017c ka\u017cdego dnia. Na ko\u0144cu widoczno\u015b\u0107 i automatyzacja. Je\u015bli nie wiesz, gdzie le\u017cy problem, zacznij od <a href=\"https:\/\/codescriptum.pl\/audyt-sklepu-internetowego\/\">bezp\u0142atnego skanu sklepu<\/a>: w kilka minut sprawdzi szybko\u015b\u0107, dane strukturalne, podstawy SEO i wymagania prawne. Je\u015bli wolisz odda\u0107 naprawy w r\u0119ce zespo\u0142u, kt\u00f3ry na co dzie\u0144 buduje i rozwija sklepy, zobacz nasz\u0105 ofert\u0119 <a href=\"https:\/\/codescriptum.pl\/sklepy-internetowe\/\">sklep\u00f3w internetowych<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Lista 100 problem\u00f3w, z kt\u00f3rymi w\u0142a\u015bciciele sklep\u00f3w na WooCommerce zg\u0142aszaj\u0105 si\u0119 najcz\u0119\u015bciej, z przyczyn\u0105 i rozwi\u0105zaniem przy ka\u017cdym.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32],"tags":[],"class_list":["post-90024","post","type-post","status-publish","format-standard","hentry","category-sklepy-internetowe"],"_links":{"self":[{"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/posts\/90024","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/comments?post=90024"}],"version-history":[{"count":1,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/posts\/90024\/revisions"}],"predecessor-version":[{"id":90064,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/posts\/90024\/revisions\/90064"}],"wp:attachment":[{"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/media?parent=90024"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/categories?post=90024"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codescriptum.pl\/blog\/wp-json\/wp\/v2\/tags?post=90024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}