naprawa-stron.pl Online 24/7 Zgłoś awarię

Sklep na Black Friday: lista kontrolna wydajności i stabilności WooCommerce

Autor: Grzegorz Wojterzak. Aktualizacja: 4 listopada 2026. Czas czytania: około 14 minut.

$ przegląd sklep przed Black Friday
Termin
Black Friday 27 listopada 2026, Cyber Monday 30 listopada 2026
Najczęstsze awarie
Wolna kasa, przekroczone limity hostingu, niewysłane maile, zatrzymane zadania w tle
Czas przygotowania
2–3 tygodnie z testem na kopii, sam przegląd: jeden dzień
Czy zrobisz to sam?
Większość listy tak. Test obciążeniowy i ustawienia serwera raczej z pomocą

Szybka odpowiedź

Żeby sklep WooCommerce wytrzymał Black Friday: zaktualizuj i przetestuj wszystko najpóźniej tydzień przed promocją, potem zamroź zmiany. Sprawdź limity hostingu i pamięć PHP, włącz cache stron bez koszyka, kasy i konta klienta, upewnij się, że zadania w tle (Action Scheduler) nie mają zaległości, a maile wychodzą przez SMTP. Zrób test obciążeniowy na kopii, ustaw monitoring dostępności i spisz plan awaryjny z numerem do hostingu.

Black Friday w 2026 roku wypada w piątek 27 listopada, Cyber Monday w poniedziałek 30 listopada. Dla sklepu to kilka dni, w których ruch potrafi być wielokrotnie większy niż zwykle, a każda godzina przestoju kosztuje więcej niż w zwykły wtorek. Większość awarii w tym czasie nie bierze się z ataku, tylko z rzeczy, które sklep znosił na co dzień: za małego limitu pamięci, wtyczki zaktualizowanej dzień przed promocją, maili wysyłanych prosto z serwera.

Ta lista prowadzi od przygotowań do dnia promocji. Przy każdym punkcie piszę, co to znaczy dla Ciebie, jak to sprawdzić i co zrobić. Stan na listopad 2026, WordPress 7.1, WooCommerce 11.2.

Harmonogram: co i kiedy

Kolejność jest ważniejsza niż szybkość. Testy robisz, kiedy jest jeszcze czas na poprawki, a w ostatnim tygodniu niczego już nie zmieniasz.

Harmonogram przygotowań sklepu do Black Friday 2026 Oś czasu: 4 listopada audyt sklepu i limitów hostingu, 13 listopada test obciążeniowy na kopii, 16 listopada ostatnie aktualizacje, 20 listopada zamrożenie zmian poza poprawkami bezpieczeństwa, 26 listopada kopia i próbne zamówienie, 27 listopada Black Friday z dyżurem, 30 listopada Cyber Monday, 2 grudnia odmrożenie zmian. Do 20 listopada trwa okres przygotowań, potem okres zamrożenia. 4.11audyt sklepui limitów hostingu 13.11test obciążeniowyna kopii 16.11ostatnieaktualizacje 20.11zamrożenie zmian(poza łatkami) 26.11kopia, próbnezamówienie 27.11Black Friday:dyżur, monitoring 30.11Cyber Mondaydrugi szczyt 2.12odmrożenie,zaległe zmiany przygotowania: testy, aktualizacje, poprawki zamrożenie: tylko łatki bezpieczeństwa
Daty dla Black Friday 2026. Jeśli promocje zaczynasz wcześniej, przesuń zamrożenie na tydzień przed pierwszym dniem promocji.

Aktualizacje i zamrożenie zmian

Zamrożenie zmian to okres, w którym nie instalujesz nowych wtyczek, nie zmieniasz motywu i nie aktualizujesz niczego poza poprawkami bezpieczeństwa. Powód jest prosty: każda zmiana to ryzyko, a w czasie promocji nie masz czasu na szukanie, która z nich zepsuła kasę.

  1. Zaktualizuj wszystko przed zamrożeniem, najpierw na kopii

    Kopia testowa (staging) to osobna instalacja sklepu, na której sprawdzasz zmiany bez ryzyka. Wiele hostingów tworzy ją jednym kliknięciem. Zaktualizuj tam WordPressa, WooCommerce, bramkę płatności i pozostałe wtyczki, złóż próbne zamówienie, a dopiero potem powtórz to samo w sklepie. Jak postępować, gdy coś pójdzie źle, opisuję w poradniku Strona nie działa po aktualizacji.

  2. Zdecyduj, co z automatycznymi aktualizacjami

    Automatyczne aktualizacje wtyczek łatają luki szybko, ale mogą zmienić coś w kasie w środku promocji. Od WordPressa 6.6 nieudana automatyczna aktualizacja wtyczki, która powoduje błąd krytyczny, jest cofana, ale nie każda usterka to błąd krytyczny: zepsuty przycisk płatności go nie wywoła. Rozsądny kompromis: na czas zamrożenia wyłącz automatyczne aktualizacje WooCommerce i bramki płatności, a poprawki bezpieczeństwa instaluj ręcznie, po sprawdzeniu na kopii.

  3. Nie zaczynaj teraz dużych zmian

    Przeniesienie zamówień na nowy sposób zapisu (HPOS), zmiana motywu, nowa bramka płatności albo przenosiny na inny hosting to projekty na grudzień, nie na listopad.

Kopie zapasowe, które da się przywrócić

Kopia zapasowa przydaje się tylko wtedy, gdy ją sprawdziłeś. Przed promocją:

  • Codzienna kopia plików i bazy poza serwerem sklepu, np. w chmurze. Kopia na tym samym serwerze zginie razem z nim.
  • Próbne przywrócenie na kopii testowej. Raz przed promocją sprawdź, czy z kopii da się odtworzyć działający sklep i ile to trwa.
  • Kopia ręczna 26 listopada, dzień przed szczytem.
Przywrócenie kopii kasuje nowe zamówienia

Kopia z rana nie zawiera zamówień złożonych po jej wykonaniu. Jeśli w czasie promocji przywrócisz bazę z kopii, te zamówienia znikną, a klienci zapłacili. Dlatego przy awarii w dniu promocji przywrócenie bazy to ostateczność. Najpierw szukaj przyczyny, a jeśli przywracasz, wcześniej wyeksportuj nowe zamówienia.

Limity hostingu i pamięć PHP

Hosting współdzielony ma limity, których na co dzień nie widać: liczbę procesów PHP obsługiwanych naraz, pamięć, moc procesora, liczbę połączeń z bazą. Przy dużym ruchu sklep nie „zwalnia równo”, tylko w pewnym momencie zaczyna zwracać błędy 503 albo 508. Zacznij od tego, co widzisz w panelu WordPressa: WooCommerce → Status → Status systemu.

Status systemu WooCommerce, tabela Środowisko WordPressa: ostrzeżenie Limit pamięci WordPressa 48 MB w czerwonej ramce
Zrzut ekranuWooCommerce → Status → Status systemu, tabela „Środowisko WordPressa”: ostrzeżenie przy limicie pamięci (48 MB, zalecane co najmniej 64 MB, czerwona ramka). Tu sprawdzisz też wersje WordPressa, WooCommerce i pakietu Harmonogram Akcji (Action Scheduler) oraz to, czy działa Cron WordPressa. Ścieżki zanonimizowane. Testowy sklep na WordPressie 7.1.4 i WooCommerce 11.2.1 po polsku, dane fikcyjne.

Komunikat na zrzucie mówi o minimum 64 MB, ale dokumentacja WooCommerce zaleca dla sklepu limit pamięci WordPressa 256 MB lub więcej. Ustawisz go w pliku wp-config.php, nad linią /* That's all, stop editing! */:

define( 'WP_MEMORY_LIMIT', '256M' );

Jeśli po zmianie wartość na ekranie statusu się nie zmienia, hosting ma niższy limit PHP (memory_limit). Podnosi się go w panelu hostingu, w ustawieniach PHP, albo przez pomoc techniczną. Przy okazji sprawdź wersję PHP: WooCommerce zaleca PHP 8.3 lub nowsze, a PHP 8.2 traci poprawki bezpieczeństwa 31 grudnia 2026.

Zapytaj hosting wprost, najlepiej mailem, żeby mieć odpowiedź na piśmie:

  • ile procesów PHP może działać naraz na moim koncie i co się dzieje po przekroczeniu,
  • czy w panelu widać wykres wykorzystania limitów z ostatnich tygodni,
  • czy na czas promocji można tymczasowo zwiększyć zasoby i ile to kosztuje,
  • jaki jest numer telefonu do wsparcia technicznego w piątek wieczorem i w weekend.

Cache: co przyspieszać, a czego nigdy

Cache stron to gotowe kopie podstron, które serwer wysyła bez uruchamiania WordPressa. Dla katalogu produktów to najtańszy sposób na wytrzymanie ruchu. Dla koszyka i kasy to przepis na katastrofę: klient zobaczyłby cudzy koszyk albo nie mógłby złożyć zamówienia.

Które żądania w sklepie WooCommerce mogą iść z cache Żądanie klienta trafia do pytania: czy adres jest na liście wyjątków albo przeglądarka ma cookie koszyka lub sesji WooCommerce. Jeśli nie, strona idzie z cache: strona główna, kategorie, karty produktów, strony informacyjne, obrazy, CSS i JS. Jeśli tak, żądanie obsługuje PHP i baza danych: koszyk, kasa, moje konto, adresy z add-to-cart, wc-ajax i Store API. Ta druga droga decyduje o tym, ile zamówień sklep przyjmie naraz. Żądanie klienta Adres z listy wyjątków albo cookie koszyka lub sesji WooCommerce? sprawdza wtyczka cache lub serwer nie tak Strona z cache: szybko, tanio strona główna, kategorie, karty produktów, strony informacyjne, obrazy, CSS i JS Serwer wysyła gotową kopię bez uruchamiania PHP. PHP i baza danych: zawsze na żywo koszyk, kasa, moje konto ?add-to-cart= ?wc-ajax= /wp-json/wc/store/ Tu działają limity procesów PHP. Od nich zależy liczba zamówień naraz.
Cache przyspiesza oglądanie, ale nie składanie zamówień. Nazwy stron koszyka, kasy i konta są w Twoim sklepie takie, jakie ustawiono w WooCommerce, np. /koszyk/ lub /cart/.

Co sprawdzić w ustawieniach cache, według dokumentacji WooCommerce dla deweloperów:

  • Strony wykluczone z cache: koszyk, kasa i moje konto. Wiele wtyczek wyklucza je samo, ale sprawdź to w ustawieniach.
  • Cookies, przy których cache ma się wyłączać: woocommerce_cart_hash, woocommerce_items_in_cart, wp_woocommerce_session_, woocommerce_recently_viewed, store_notice z numerem komunikatu.
  • Adresy z parametrem ?add-to-cart= nie mogą iść z cache.
  • Cache obiektów (np. Redis), czyli przechowywanie wyników zapytań do bazy w pamięci: jeśli wtyczka lub hosting cache'uje zapytania do bazy, wyklucz z tego sesje WooCommerce (_wc_session_).

Jak to sprawdzić bez terminala: otwórz sklep w oknie prywatnym, dodaj produkt do koszyka, przejdź do kasy, potem otwórz sklep w drugiej przeglądarce. Druga przeglądarka musi mieć pusty koszyk, a ikona koszyka w pierwszej musi pokazywać produkt na każdej podstronie. Przy dużym ruchu automatów zwróć też uwagę na adresy filtrów i „dodaj do koszyka” odwiedzane przez boty (więcej w poradniku Boty AI przeciążają stronę).

Zadania w tle: Action Scheduler i cron

Action Scheduler to kolejka zadań, z której WooCommerce korzysta przy wielu czynnościach w tle: przeliczaniu statystyk, aktualizacjach bazy, a wiele wtyczek także przy wysyłce maili i synchronizacji z marketplace'ami czy hurtowniami. Domyślnie uruchamia go WP-Cron, czyli harmonogram WordPressa, który działa tylko wtedy, gdy ktoś odwiedza stronę, i potrzebuje do tego zapytania serwera do samego siebie. Jeśli to zapytanie nie przechodzi, zadania się zatrzymują, a Ty tego nie widzisz.

Sprawdź to w WooCommerce → Status → Zaplanowane działania, filtr Termin przekroczony (w wersji angielskiej Scheduled Actions, Past-due), czyli zadania, które powinny już się wykonać.

WooCommerce, Status, Zaplanowane działania: filtr Termin przekroczony z 62 zaległymi zadaniami w czerwonej ramce
Zrzut ekranuWooCommerce → Status → Zaplanowane działania: filtr „Termin przekroczony” (w wersji angielskiej Past-due, czerwona ramka) z 62 zaległymi zadaniami. Na testowej instalacji zasymulowałem serwer, który nie może połączyć się sam ze sobą, więc kolejka stoi. Kolumny z argumentami i dziennikiem ukryte. Testowy sklep na WordPressie 7.1.4 i WooCommerce 11.2.1 po polsku, dane fikcyjne.

Dokumentacja Action Scheduler mówi, że kilka zaległych zadań to normalna rzecz, ale wiele zadań zaległych o ponad dobę oznacza, że coś jest nie tak. Przyczynę często widać w Narzędzia → Stan witryny (Tools → Site Health), czyli wbudowanym przeglądzie stanu WordPressa.

Stan witryny w WordPressie: trzy błędy krytyczne, w ramkach REST API napotkało błąd oraz brak zapytania pętli zwrotnej
Zrzut ekranuNarzędzia → Stan witryny, zakładka Status: dwa błędy krytyczne ważne dla zadań w tle (czerwone ramki): „REST API napotkało błąd” i brak zapytania pętli zwrotnej, czyli strona nie może połączyć się sama ze sobą. Trzeci problem, brak bezpiecznego połączenia, w prawdziwym sklepie trzeba naprawić przed promocją. Testowy sklep na WordPressie 7.1.4 i WooCommerce 11.2.1 po polsku, dane fikcyjne.

Z terminala ten sam stan pokaże polecenie, które tylko odczytuje dane. Prawdziwy wynik z instalacji testowej:

$ wp action-scheduler status
Data store: ActionScheduler_HybridStore
Runner: ActionScheduler_QueueRunner
Version: 4.1.0
status	count	oldest	newest
pending	39	2026-10-16 07:23:58 +0000	2026-10-17 03:00:00 +0000

Kolumna oldest to najstarsze oczekujące zadanie. Jeśli jest sprzed kilku dni, kolejka stoi.

Jak naprawić: najpierw usuń przyczynę wskazaną w raporcie Stan witryny (często to blokada w zaporze, wtyczce bezpieczeństwa albo brak HTTPS). Na sklepach z większym ruchem dobrze jest też uruchamiać WP-Cron prawdziwym harmonogramem serwera (cron w panelu hostingu), a nie odwiedzinami. Dodajesz do wp-config.php:

define( 'DISABLE_WP_CRON', true );

i w panelu hostingu ustawiasz zadanie cron, które co kilka minut wywołuje stronę wp-cron.php, np.:

*/5 * * * * wget -q --delete-after https://twojsklep.pl/wp-cron.php

Zrób to przed zamrożeniem i sprawdź po dobie, czy liczba zaległych zadań spada. Wyłączenie WP-Cron bez ustawienia zadania w panelu hostingu zatrzyma wszystkie zadania w tle.

Maile transakcyjne

Maile transakcyjne to potwierdzenia zamówień, faktury, informacje o wysyłce. Jeśli w Black Friday trafią do spamu albo nie wyjdą wcale, klienci zaczną dzwonić i pisać, a część zamówi drugi raz. Sam WooCommerce na ekranie Ustawienia → E-maile radzi połączyć adres nadawcy z domeną sklepu i wysyłać przez osobny serwer SMTP.

  • Wysyłka przez SMTP, czyli przez prawdziwą skrzynkę lub usługę pocztową, a nie przez funkcję mail() serwera. Służy do tego wtyczka SMTP skonfigurowana z danymi skrzynki w Twojej domenie.
  • Rekordy SPF, DKIM i DMARC dla domeny, czyli wpisy w DNS potwierdzające, że serwer może wysyłać pocztę w imieniu domeny. Ustawia je hosting poczty.
  • Adres nadawcy w domenie sklepu (pole Adres e-mail "od" w ustawieniach maili WooCommerce), nie adres z darmowej poczty.
  • Limit wysyłki. Zapytaj hosting, ile maili na godzinę możesz wysłać. Przy dużej liczbie zamówień i newsletterze w tym samym czasie limit łatwo przekroczyć. Newsletter wysyłaj inną usługą.
  • Test: złóż próbne zamówienie na adres w Gmailu i w polskiej darmowej poczcie i sprawdź, czy mail doszedł do skrzynki odbiorczej.

Test obciążeniowy na kopii

Test obciążeniowy to symulacja wielu klientów naraz. Pokazuje, przy ilu jednoczesnych zakupach sklep zaczyna zwalniać lub zwracać błędy, zanim zrobią to prawdziwi klienci.

  1. Testuj kopię, nie sklep

    Test na działającym sklepie obciąży prawdziwych klientów, a na hostingu współdzielonym także innych użytkowników serwera. Hosting może uznać go za atak. Jeśli kopia stoi na tym samym serwerze co sklep, uprzedź hosting i zrób test w nocy.

  2. Przełącz bramkę płatności w tryb testowy

    Na kopii płatności muszą iść do środowiska testowego operatora, a maile do klientów nie mogą wychodzić. Sprawdź to przed testem.

  3. Symuluj zakupy, nie tylko wejścia na stronę główną

    Strona główna z cache wytrzyma prawie wszystko. Scenariusz testu powinien obejmować kategorię, kartę produktu, dodanie do koszyka i przejście do kasy. Używa się do tego narzędzi open source, np. k6 lub Apache JMeter; zwiększaj liczbę wirtualnych klientów stopniowo.

  4. Patrz na czas odpowiedzi kasy i błędy

    Zapisz, przy jakiej liczbie jednoczesnych klientów czas odpowiedzi kasy przekracza kilka sekund albo pojawiają się błędy 5xx. To Twój realny limit. Jeśli jest niski, masz jeszcze czas na zmianę planu hostingu albo optymalizację.

Monitoring i bezpieczeństwo w dniu promocji

  • Monitoring dostępności, czyli usługa, która co minutę lub kilka minut sprawdza, czy sklep odpowiada, i wysyła alarm SMS-em lub w aplikacji. Ustaw sprawdzanie strony głównej i strony koszyka. Alarm ma przychodzić do osoby, która w piątek wieczorem odbierze telefon.
  • Panel operatora płatności: sprawdzaj w czasie promocji liczbę nieudanych płatności. Gwałtowny skok to często atak na kasę, opisany w poradniku Setki nieudanych zamówień w WooCommerce. Przed promocją włącz funkcję Limit prób zamówienia (WooCommerce → Ustawienia → Zaawansowane → Funkcje), jeśli używasz kasy blokowej.
  • Logi błędów: wiedz, gdzie w panelu hostingu jest log błędów PHP. W razie awarii to pierwsze miejsce, do którego zajrzysz.

Plan awaryjny na dzień promocji

Plan awaryjny to jedna kartka z odpowiedziami na pytania, których w stresie nie chcesz zadawać po raz pierwszy. Wydrukuj ją i wyślij wszystkim, którzy dyżurują.

PytanieCo wpisać
Kto dyżuruje i kiedyImię, telefon, godziny w piątek, sobotę, niedzielę i poniedziałek
Kto decyduje o wyłączeniu promocji lub sklepuJedna osoba, z zastępcą
Numer do hostinguTelefon wsparcia, numer klienta, dane do weryfikacji
Kontakt do operatora płatnościTelefon lub formularz, identyfikator sprzedawcy
DostępyGdzie są hasła do panelu hostingu, WordPressa, DNS (menedżer haseł, nie kartka na monitorze)
Gdzie są kopie i jak je przywrócićMiejsce, godzina ostatniej kopii, kto umie przywrócić
Co mówimy klientom przy awariiGotowy komunikat na stronę i do mediów społecznościowych
Kontakt do serwisuTelefon osoby lub firmy, która naprawi sklep

Jeśli sklep padnie, kolejność jest taka: sprawdź log błędów i wykresy limitów w panelu hostingu, zadzwoń do hostingu, cofnij ostatnią zmianę, jeśli była. Na czas naprawy włącz tryb konserwacji z kodem 503, zamiast zostawiać klientów z błędem. Przy komunikacie „Na tej stronie wystąpił błąd krytyczny” pomoże poradnik Błąd krytyczny WordPress.

Promocje a najniższa cena z 30 dni

To nie technika, ale błąd tutaj też kosztuje. Informując o obniżce ceny, musisz pokazać obok najniższą cenę z 30 dni przed obniżką, a procent obniżki liczyć od tej ceny. Przy produktach sprzedawanych krócej niż 30 dni liczy się najniższa cena od początku sprzedaży. Przestrzeganie tych zasad kontroluje Inspekcja Handlowa, a opisuje je UOKiK, m.in. w raporcie z kontroli informowania o cenach.

Od strony technicznej: w kodzie WooCommerce 11.2.1 nie znalazłem funkcji, która sama zapisuje historię cen i pokazuje najniższą cenę z 30 dni. Robi to wtyczka albo motyw. Sprawdź przed promocją, czy na karcie produktu, w kategorii i w promocyjnym boksie na stronie głównej ta cena się wyświetla i czy jest prawdziwa. Czy konkretna promocja spełnia przepisy, oceni prawnik, nie programista.

Typowy scenariusz

Sklep z kosmetykami wysyła w piątek rano newsletter z kodem rabatowym. Po kwadransie strona główna działa, ale kasa ładuje się minutę, a część klientów widzi błąd 503. Strony katalogu idą z cache, więc wyglądają dobrze, ale każdy klient w koszyku zajmuje proces PHP, a hosting pozwala na kilka naraz. Do tego WP-Cron jest wyłączony bez zadania w panelu hostingu, więc synchronizacja stanów magazynowych z hurtownią, oparta na kolejce zadań, stoi od tygodnia. Pomaga tymczasowe zwiększenie zasobów przez hosting i ustawienie crona. Test obciążeniowy na kopii i przegląd zaległych zadań w tle dwa tygodnie wcześniej pokazałyby oba problemy przed promocją.

Kiedy nie robić tego samemu

Kopie, aktualizacje na kopii testowej, maile i plan awaryjny przygotujesz sam. Pomoc przyda się, gdy:

  • test obciążeniowy pokazuje, że kasa nie wytrzymuje kilkunastu klientów naraz, a nie wiesz, czy winny jest hosting, czy wtyczki,
  • Raport Stan witryny pokazuje krytyczne problemy z REST API lub zapytaniem do samej siebie, a zadania w tle stoją,
  • cache psuje koszyk albo logowanie i nie wiesz, którą regułę zmienić,
  • nie masz nikogo, kto w piątek wieczorem i w weekend zareaguje na alarm.

Chcesz przejść przez Black Friday spokojnie?

W abonamencie Care (199 zł netto miesięcznie) przejmuję aktualizacje, codzienne kopie, monitoring i cotygodniowy skan bezpieczeństwa, a interwencje mają rabat. Przed promocją sprawdzę sklep według tej listy, a zgłoszenia awaryjne przyjmuję 24/7.

Najczęstsze pytania

Kiedy jest Black Friday w 2026 roku?

Black Friday przypada w piątek 27 listopada 2026, a Cyber Monday w poniedziałek 30 listopada 2026. Wiele sklepów zaczyna promocje wcześniej, więc ruch rośnie zwykle już w tygodniu poprzedzającym.

Czy przed Black Friday zaktualizować wtyczki?

Tak, ale z wyprzedzeniem: najpóźniej około tygodnia przed promocją, najpierw na kopii sklepu. W ostatnim tygodniu wprowadzaj tylko poprawki bezpieczeństwa, a każdą po sprawdzeniu, że koszyk, kasa i płatność działają.

Czy wtyczka cache wystarczy, żeby sklep wytrzymał ruch?

Nie. Cache przyspiesza strony wspólne dla wszystkich, czyli katalog i karty produktów. Koszyk, kasa i konto klienta zawsze idą do PHP i bazy danych, więc to one decydują, ile zamówień naraz przyjmie sklep. Dlatego liczą się też limity hostingu i test obciążeniowy na kopii.

Co zrobić, jeśli sklep padnie w trakcie promocji?

Nie przywracaj kopii zapasowej bez namysłu, bo stracisz zamówienia złożone po jej wykonaniu. Najpierw sprawdź logi błędów i limity w panelu hostingu, zadzwoń do hostingu, a jeśli trzeba, włącz tryb konserwacji z kodem 503. Najlepiej działać według planu awaryjnego przygotowanego wcześniej.

Czy przy promocji muszę pokazywać najniższą cenę z 30 dni?

Tak. Informując o obniżce ceny, trzeba podać obok najniższą cenę z 30 dni przed obniżką. Szczegóły, w tym wyjątki dla produktów sprzedawanych krócej niż 30 dni, opisuje UOKiK. W razie wątpliwości co do konkretnej promocji zapytaj prawnika.

Grzegorz Wojterzak naprawia strony internetowe po awariach i włamaniach: WordPress, WooCommerce, PHP i Node.js. Od ponad dekady pracuje przy stronach i sklepach internetowych polskich firm.