Zamawiasz moduł do PrestaShop albo wtyczkę do WooCommerce i chcesz wiedzieć, jak ułożyć współpracę, żeby po wdrożeniu nie zostać z kodem, którego nikt nie umie ruszyć. W praktyce większość problemów nie wynika z samego kodu, tylko z organizacji: braku analizy, pracy bezpośrednio na produkcji i plików trzymanych wyłącznie na komputerze wykonawcy. Poniżej masz typowe błędy, checklistę do odhaczenia przed startem i odpowiedzi na pytania, które najczęściej dostajemy od firm z Józefowa i okolic. Część techniczną — strukturę modułu, hooki i wycenę — znajdziesz w pozostałych sekcjach artykułu.

Czym są niestandardowe moduły i wtyczki i kiedy naprawdę ich potrzebujesz

Moduł w PrestaShop to katalog plików PHP w /modules/, który rejestruje się w sklepie i rozszerza jego działanie przez hooki, bez ingerencji w pliki rdzenia. Wtyczka w WordPress/WooCommerce to katalog w /wp-content/plugins/ z nagłówkiem opisującym wtyczkę w pliku głównym — WordPress sam ją wykrywa, uruchamia i pokazuje na liście wtyczek.

Trzy sygnały, że gotowa wtyczka tego nie pokryje:

Rozgraniczenie jest kluczowe: konfiguracja istniejącej wtyczki to ustawienia, reguły, szablony i uprawnienia — nie powstaje nowy kod, nie ma czego utrzymywać. Moduł niestandardowy to kod, który zostaje w repozytorium, ma dokumentację, wymaga testów po każdej aktualizacji PHP i PrestaShop oraz przeglądu przy zmianie motywu. Jeśli wykonawca proponuje ci „moduł niestandardowy”, a w środku są wyłącznie zmiany w panelu, to nie ta kategoria i nie powinieneś za to płacić jak za rozwój.

Prowadzimy takie wdrożenia dla firm z Józefowa i okolic — Krasnobrodu, Zwierzyńca, Szczebrzeszyna, Zamościa. Zanim zamówisz kod, zadaj jedno pytanie: czy ten problem da się rozwiązać ustawieniem? Jeśli tak, zacznij od tego. Jeśli nie, zaplanuj też, kto przejmie po module utrzymanie i opiekę techniczną sklepu w Józefowie po zakończeniu prac. Terminologia i struktura modułów są opisane w dokumentacji dla deweloperów PrestaShop — warto zajrzeć choćby po to, żeby rozumieć, o czym mówi wykonawca.

Gotowa wtyczka czy własny moduł: porównanie kosztów i ryzyk

Porównanie robi się źle, gdy patrzy się tylko na pierwszy rok. Policz trzy lata i dołóż koszt pracy przy podnoszeniu wersji PHP — tam gotowe wtyczki potrafią zaskoczyć.

Typowa wtyczka premium do WooCommerce to wydatek rzędu 200–800 zł za rok, zależnie od zakresu i tego, czy licencja jest rozliczana w USD (dochodzi ryzyko kursowe i VAT). Przy dwóch–trzech integracjach działających równocześnie — płatności ratalne, wysyłka kurierska, faktury — schodzi się na 600–2400 zł rocznie, czyli 1800–7200 zł w trzy lata. Część wtyczek przeszła na czysty abonament: brak opłaty nie blokuje działającej strony, ale odcina aktualizacje, a to oznacza brak poprawek bezpieczeństwa.

Drugie ryzyko: autor porzuca wtyczkę. Sygnały są widoczne w nagłówku pliku — pole „WC tested up to” zatrzymane na starej wersji, brak deklaracji zgodności z HPOS (High-Performance Order Storage), ostatnia aktualizacja sprzed dwóch lat. Efekt przy PHP 8.3: ostrzeżenia w logach, konflikty z nowszym WooCommerce, czasem luka bezpieczeństwa łatana ręcznie na produkcji.

Praktyczne kryterium decyzyjne: skonfiguruj wtyczkę uczciwie i policz, ile logiki zostaje poza nią — własne przeliczenia, reguły rabatowe, mapowanie pól w integracji. Jeśli to około 20% i rośnie przy każdym nowym wymaganiu, własny kod jest tańszy w trzyletnim horyzoncie niż kolejne doklejki w pliku functions.php motywu, których nikt później nie rozczyta. Czytelnikom pracującym na WordPressie polecam też materiał o tym, jak świadomie rozszerzać stronę bez rozsypywania jej przy aktualizacji: niestandardowe bloki responsywne w Elementorze — przewodnik.

KryteriumGotowa wtyczka (subskrypcja)Własny moduł lub wtyczka
Koszt pierwszego roku200–800 zł za wtyczkę; przy 3 integracjach 600–2400 zł3 000–15 000 zł jednorazowo, zależnie od zakresu i liczby integracji
Koszt w 3 lata1800–7200 zł, o ile ceny licencji nie wzrosnąkoszt startu plus ok. 15–20% rocznie na utrzymanie i testy
Aktualizacje pod nowe PHPzależą od autora; wtyczka porzucona = brak wsparciapo twojej stronie, ale masz repozytorium i pełną kontrolę
Dopasowanie do procesudziała, dopóki proces mieści się w ustawieniachdokładnie tak, jak zostało opisane w analizie
Główne ryzykowzrost ceny, zmiana modelu na abonament, zniknięcie z rynkubłąd wykonawcy, brak dokumentacji, uzależnienie od jednej osoby

Jak zbudowany jest moduł PrestaShop i wtyczka WooCommerce

Moduł PrestaShop ma powtarzalną strukturę. Plik główny /modules/mojmodul/mojmodul.php zawiera klasę dziedziczącą po Module z metodami install(), uninstall(), getContent() i metodami hooków. Obok leżą: /controllers/front/ i /controllers/admin/ (własne endpointy i ekrany w panelu), /views/templates/front/, /views/templates/hook/, /views/templates/admin/, /views/css/, /views/js/, /upgrade/ ze skryptami SQL migracji oraz /config/ z plikiem config.xml. Jeśli po wdrożeniu nie ma katalogu /upgrade/, to znaczy, że przy kolejnej zmianie bazy ktoś będzie klikał ręcznie w phpMyAdmin.

Hooki, które najczęściej wchodzą w grę przy koszyku i zamówieniu: displayShoppingCart i displayShoppingCartFooter (dodatkowe pola i komunikaty w koszyku), actionCartSave (przeliczenie zawartości), actionValidateOrder (modyfikacja danych zamówienia przed zapisem), actionOrderStatusPostUpdate, displayOrderConfirmation, paymentOptions i displayAdminOrder. Opis wszystkich hooków znajdziesz w dokumentacji deweloperskiej PrestaShop.

Wtyczka WooCommerce ma plik główny z nagłówkiem (Plugin Name, Version, Requires PHP, WC requires at least, WC tested up to, Text Domain) — te pola to nie ozdoba, bo po nich poznasz, czy wtyczka jest utrzymywana. Dalej działają add_action() i add_filter(); przy filtrach podawaj priorytet, inaczej kolejność wykonania zależy od przypadku. Szablony nadpisujesz w motywie w katalogu woocommerce/, a zgodność z HPOS deklarujesz przez FeaturesUtil::declare_compatibility(). Szczegóły są w dokumentacji WooCommerce.

W obu systemach composer.json i autoloader PSR-4 to różnica między kodem, który da się rozwijać, a zbiorem require sprzed lat. Nadpisywanie plików core — edycja klas w /classes/, kopiowanie szablonów wtyczki do motywu — to dług techniczny, którego unikamy: pierwsza aktualizacja kasuje zmiany, a nikt nie pamięta, co tam było.

Proces wdrożenia krok po kroku: od briefu do produkcji

Każdy projekt prowadzimy w czterech etapach. Każdy etap kończy się konkretnym plikiem albo dostępem, a nie ustnym „zrobione”.

Etap 1: analiza procesu i spisanie przypadków brzegowych. Zanim powstanie pierwsza linijka kodu, opisujemy proces: kto klika co, w jakiej kolejności i co się dzieje przy anulowaniu zamówienia, zwrocie, płatności za pobraniem oraz zamówieniu rozbitym na dwie paczki. Efekt to dokument na 2–5 stron z listą przypadków brzegowych — zwykle 10–15 pozycji. Bez tego etapu każdy nietypowy scenariusz staje się osobnym, dodatkowo płatnym zleceniem w trakcie prac.

Etap 2: prototyp na środowisku stagingu. Pracujemy na kopii sklepu, np. na subdomenie staging.twojsklep.pl, z kopią bazy i plików, wyłączoną wysyłką maili do klientów i wyłączonymi płatnościami. Zero pracy bezpośrednio na produkcji. Na tym etapie moduł ma już działającą strukturę (katalog /modules/ w PrestaShop, /wp-content/plugins/ w WooCommerce) i pierwszy przepływ danych.

Etap 3: kod, testy, code review. Praca w repozytorium Git, osobne gałęzie, każda zmiana przechodzi przez pull request i przegląd drugiej osoby. Testy obejmują co najmniej: poprawne dane, brak odpowiedzi API, błędny format odpowiedzi i przekroczenie limitu czasu. Strukturę modułu opisuje dokumentacja dla deweloperów PrestaShop — warto ją przejrzeć przed rozmową z wykonawcą.

Etap 4: wdrożenie z możliwością wycofania zmian. Kopia plików i bazy przed startem, wdrożenie w oknie poza godzinami szczytu (np. 6:00–8:00), tag wersji w repozytorium. Jeśli w ciągu 48 godzin monitoringu pojawi się błąd, wracamy do kopii jednym poleceniem, a nie „łatamy na żywo”.

Co dostajesz po każdym etapie: dokumentację powdrożeniową (co robi moduł, jakie ma ustawienia, co zrobić przy błędzie), repozytorium z historią zmian oraz dostępy do stagingu, panelu i repozytorium zapisane na Twoje konto firmowe, nie na prywatne konto wykonawcy.

EtapCo powstajeCo dostajesz
1. AnalizaOpis procesu i lista 10–15 przypadków brzegowychDokument analizy z wyceną zakresu
2. PrototypDziałający przepływ na stagingu, bez wpływu na produkcjęAdres stagingu i dostęp testowy
3. Kod i testyModuł w repozytorium Git, testy błędów API, code reviewRepozytorium i raport z testów
4. WdrożenieWersja na produkcji z tagiem i kopią do wycofaniaDokumentacja powdrożeniowa i dostępy

Ile to kosztuje: widełki wyceny według liczby godzin

Najczęstsze pytanie brzmi: ile to będzie kosztować. Uczciwa odpowiedź to liczba godzin pomnożona przez stawkę, a nie ryczałt wzięty z sufitu. Wycenę rozbijamy na pięć pozycji:

Dla porównania: prosty moduł integracyjny (np. dodatkowe pole w zamówieniu plus eksport CSV do programu księgowego) to zwykle 30–60 h. Moduł z logiką biznesową — rabaty zależne od kategorii i historii zakupów, własny algorytm kosztu wysyłki, łącznik z ERP — startuje od 120 h i potrafi dojść do 250–300 h.

Skąd ten rozrzut? Z liczby wyjątków. Pierwsza wersja funkcji to często 40% pracy, reszta to obsługa sytuacji, których nikt nie przewidział na starcie. Dlatego do wyceny doliczamy bufor ryzyka 15–20% i mówimy o tym otwarcie, zamiast chować go w stawce.

Ryczałt bez analizy jest ryzykowny dla obu stron. Wykonawca zabezpiecza się z góry, czyli zawyża, a klient nie wie, za co płaci. Jeśli po miesiącu okaże się, że potrzebny jest jeszcze eksport faktur do ERP, przy ryczałcie zaczyna się spór o zakres. Przy rozliczeniu godzinowym po prostu dopisuje się kolejne 12 godzin do aneksu i temat jest zamknięty.

Projekt dzielimy na etapy, gdy budżet jest ograniczony, proces nie jest do końca opisany albo integrujemy się z API, do którego nie ma pełnej dokumentacji. Po każdym etapie klient decyduje, czy idziemy dalej — budżet nie jest zamrożony, a zakres można zmienić. Podobne podejście opisaliśmy w tekście o organizacji pracy przy modułach i wtyczkach w Krasnobrodzie.

Pozycja wycenyProsty moduł integracyjnyZłożony moduł logiki biznesowej
Analiza8–10 h12–16 h
Kod15–30 h60–180 h
Testy5–10 h15–25 h
Wdrożenie3–4 h6–8 h
Dokumentacja2–4 h6–10 h
Razem30–60 h120–300 h

Integracje z ERP, płatnościami i kurierami jako typowy scenariusz modułu

Większość zamawianych modułów to łączniki: kurier, płatności, ERP albo program księgowy. Typowy scenariusz wygląda tak.

Etykiety i numery przesyłek. W panelu zamówienia pojawia się przycisk „Nadaj przesyłkę”. Moduł wysyła dane odbiorcy i wymiary paczki do API kuriera, odbiera etykietę w PDF albo ZPL (ZPL idzie od razu na drukarkę termiczną) i zapisuje numer przesyłki w zamówieniu. Ten numer trafia do maila do klienta automatycznie, bez ręcznego kopiowania. Pułapka: literówka w kodzie pocztowym wraca jako błąd walidacji, więc moduł musi pokazać komunikat przy konkretnym polu, a nie ogólne „błąd integracji”.

Synchronizacja z ERP. Kierunek przepływu jest kluczowy: produkty, stany magazynowe i ceny płyną z ERP do sklepu, bo ERP jest źródłem prawdy. Zamówienia, płatności i dane klientów płyną ze sklepu do ERP. Faktury wystawione w ERP wracają do sklepu jako plik do pobrania w panelu klienta. Odwrócenie tego kierunku, czyli ręczne poprawianie stanów w sklepie, kończy się rozjazdem magazynu w ciągu kilku tygodni.

Błędy API u kuriera. API padają, to normalne. Dlatego każde żądanie trafia do kolejki w bazie, a zadanie cron próbuje je wysłać co 5 minut. Trzy nieudane próby z rosnącym odstępem (1, 5, 15 minut), a potem zgłoszenie w panelu z logiem odpowiedzi i mailem do administratora. Bez kolejki jeden timeout oznacza etykietę, która nigdy nie powstanie, i paczkę, o której nikt nie pamięta.

Własny łącznik czy płatna wtyczka? Gotowa wtyczka wygrywa przy standardowym procesie i dokumentacja WooCommerce zwykle wystarcza, żeby ją wdrożyć. Przegrywa, gdy masz nietypowe mapowanie metod wysyłki, wysyłkę wielopaczkową, pobranie albo kilka magazynów — wtedy walczysz z ustawieniami, których nie da się nadpisać, i dokupujesz kolejne rozszerzenia.

Szerszy kontekst organizacji projektu, krok po kroku, znajdziesz w materiale o tym, jak zorganizować pracę przy modułach i wtyczkach w Zamościu.

DaneKierunek przepływuCzęstotliwość
Produkty, ceny, stany magazynoweERP → sklepco 15–30 min lub na zdarzenie
Zamówienia i płatnościsklep → ERPna zdarzenie, po zmianie statusu
Numery przesyłek i statusy dostawykurier → sklep → klientna zdarzenie, po nadaniu etykiety
Faktury i dokumenty księgoweERP → skleppo wystawieniu dokumentu

Utrzymanie modułu po wdrożeniu: aktualizacje, kompatybilność, bezpieczeństwo

Wdrożenie modułu to moment, w którym zaczyna się jego najtrudniejszy okres. Moduł napisany pod PHP 8.1 potrafi wywalić sklep po przejściu na 8.2 — najczęściej przez dynamiczne właściwości i funkcje usunięte w PHP 8. Klient dowiaduje się o tym przy pierwszym zamówieniu, nie przy wdrożeniu.

Aktualizacja PHP i rdzenia (PrestaShop 1.7 → 8.x, WordPress + WooCommerce) powinna mieć procedurę, nie być improwizacją:

Bezpieczeństwo to druga strona medalu. Jeśli moduł ma własny endpoint, musi walidować wejście, używać tokenów CSRF i nie logować danych osobowych. Tryb developerski (_PS_MODE_DEV_, WP_DEBUG) na produkcji — nigdy.

Zakres takiej opieki, to co wchodzi w pakiet, a co jest płatne dodatkowo, opisaliśmy na stronie utrzymania i opieki technicznej sklepów Józefów. Warto też wiedzieć, o co pytać wykonawcę — dokumentacja dla deweloperów PrestaShop opisuje standard hooków i override.

DziałanieCzęstotliwośćKto wykonuje
Kopia zapasowa przed zmianąprzed każdą aktualizacjąhosting lub firma utrzymaniowa
Retest modułu po aktualizacji rdzeniaprzy każdej aktualizacji PHP/PrestaShop/WooCommercewykonawca modułu
Przegląd logów błędówraz w tygodniuopieka techniczna
Monitoring dostępnościco 1–5 minut, alert 24/7system + opieka techniczna
Aktualizacja wersji PHP1–2 razy w rokuwykonawca + hosting

Pułapki przy zamawianiu niestandardowych modułów i jak je wykryć

Większość problemów nie wynika z tego, że kod jest zły, ale z tego, że nikt nie zabezpieczył się na przyszłość. Poniżej sygnały, które widać w pierwszych pięciu minutach rozmowy z wykonawcą.

Pytania, które zadaj w jednej wiadomości i oceń odpowiedź, a nie gadkę:

Rzetelny wykonawca odpowie konkretami w ciągu jednego dnia. Odpowiedź typu „to zależy, sprawdzimy przy testach” bez żadnych szczegółów oznacza, że analizy nie było.

Ostatnia pułapka to cena. Oferta 400 zł za „prosty moduł” prawie zawsze pomija etap analizy. Pierwsza zmiana wymagań po trzech miesiącach — dodatkowe pole w formularzu, inny sposób liczenia dostawy — kosztuje wtedy więcej niż różnica między tanią i rzetelną wyceną. Tania wersja nie jest tańsza, jest tylko krócej widoczna w budżecie.

Sygnał ostrzegawczyCo oznacza w praktyceJak to sprawdzić
Brak dokumentacji i dostępu do repozytoriumKod istnieje tylko u wykonawcy, nie masz jak zlecić poprawek komu innemuPoproś o link do repo i README jeszcze przed podpisaniem umowy
Modyfikacje plików rdzeniaAktualizacja PrestaShop lub WordPressa nadpisze zmiany i sklep padnieZapytaj, czy praca opiera się na hookach i override, i poproś o listę zmienianych plików
Brak środowiska stagingowegoTesty na produkcji to ryzyko przestoju i utraty zamówieńZapytaj, gdzie zobaczysz wersję testową modułu przed wdrożeniem
Wycena bez etapu analizyZakres doprecyzuje się w trakcie, czyli każda zmiana to nowy kosztZapytaj, ile godzin zajmie analiza i co dostaniesz na piśmie
Wdrożenie przez FTP na produkcjęBrak historii zmian i trudny powrót do poprzedniej wersjiZapytaj o sposób wdrażania i możliwość rollbacku

Praca z deweloperem w Józefowie i okolicach: na co zwrócić uwagę

Praca z pośrednikiem a bezpośrednio z deweloperem różni się trzema rzeczami: ceną, szybkością decyzji i dostępem do kodu. Pośrednik — agencja, broker, „kolega zna programistę” — dolicza zwykle 20–40% marży i wydłuża pętlę komunikacji: pytanie przechodzi przez dwie osoby, zanim dotrze do tego, kto pisze kod. Plus jest taki, że ktoś prowadzi projekt i pilnuje terminów. Minus: repozytorium i dokumentacja często zostają po stronie pośrednika.

Bezpośredni kontakt z deweloperem skraca tę drogę, ale znaczy też, że to Ty pilnujesz zakresu, odbioru i terminów. Jeśli nie chcesz robić tego sam, lepiej wybrać model, w którym jedna firma odpowiada i za kod, i za utrzymanie.

Odległość nie jest problemem — praca z Józefowa nad modułem pisanym 200 km dalej wygląda dziś normalnie. Problemem jest brak rytmu. Ustal na starcie:

Na koniec SLA. „W razie problemów dzwoń” to nie SLA. W umowie powinno być wprost: czas reakcji, czas naprawy błędu krytycznego, liczba godzin w pakiecie, co jest poza pakietem i kto płaci za aktualizacje zgodnościowe. Podobny układ opisaliśmy przy współpracy przy niestandardowych modułach i wtyczkach w Krasnobrodzie oraz przy porządku pracy przy modułach i wtyczkach w Zwierzyńcu — zasady są te same, zmienia się skala sklepu.

Element umowyPrzykładowy zapis
Czas reakcji na zgłoszeniedo 4 godzin w dni robocze (8:00–16:00)
Błąd krytyczny, sklep nie przyjmuje zamówieńnaprawa do 24 godzin od zgłoszenia
Pakiet godzin5 h miesięcznie, 2 niewykorzystane godziny przechodzą na kolejny miesiąc
Aktualizacje zgodnościowe modułuw pakiecie, z retestem po każdej aktualizacji rdzenia
Przekazanie na koniec współpracyrepozytorium, README i dane dostępowe w ciągu 5 dni roboczych

Najczęstsze błędy i jak je wykryć

Zamawianie wyceny ryczałtowej bez analizy procesu

Jak wykryć: Wykonawca podaje kwotę po jednej rozmowie, bez dostępu do sklepu, kodu, bazy i przykładowych zamówień. W briefie są ogólniki typu „moduł do koszyka”.

Jak naprawić: Zamów 1–2 dni płatnej analizy: spis przypadków brzegowych, lista integracji wraz z wersjami API, kryteria akceptacji. Dopiero na tej podstawie ustalajcie ryczałt albo rozbij projekt na etapy.

Kod trzymany tylko na serwerze, bez repozytorium

Jak wykryć: Nie ma adresu repozytorium, nie istnieje historia zmian, pliki wgrywa się ręcznie przez FTP lub menedżer plików w panelu hostingu.

Jak naprawić: Repozytorium Git z dostępem klienta od pierwszego commita, praca na gałęziach, wdrożenia z gałęzi głównej, tagowanie wersji. To warunek, żeby ktokolwiek inny mógł przejąć kod.

Praca bezpośrednio na produkcji

Jak wykryć: Nie ma środowiska stagingowego albo jest tylko kopia sprzed roku. Testy polegają na sprawdzaniu zmian na żywym sklepie, po godzinach zamknięcia.

Jak naprawić: Staging z aktualną kopią kodu i bazy, testy przed wdrożeniem, wdrożenie z możliwością szybkiego wycofania zmian. Na produkcji nie eksperymentujemy.

Modyfikowanie plików core i nadpisywanie szablonów w motywie nadrzędnym

Jak wykryć: Po aktualizacji PrestaShop, WooCommerce albo motywu funkcja przestaje działać lub cofa się do stanu sprzed miesięcy. W plikach core widać daty inne niż wersja wydania.

Jak naprawić: Wszystkie zmiany przez hooki, override w module lub child theme. Pliki core i motyw nadrzędny zostają nietknięte — inaczej każda aktualizacja to loteria.

Brak dokumentacji i instrukcji wdrożenia

Jak wykryć: Nikt oprócz autora nie potrafi włączyć modułu na nowym środowisku. Nie ma opisu konfiguracji, wymaganych wersji PHP i changelogu.

Jak naprawić: README z wymaganiami (wersja PHP, wersja PrestaShop lub WooCommerce), lista używanych hooków, opis konfiguracji po instalacji oraz changelog prowadzony przy każdym wydaniu.

Mylenie konfiguracji gotowej wtyczki z własnym kodem

Jak wykryć: Faktura opiewa na „wtyczkę niestandardową”, a w przekazanym pakiecie są wyłącznie pliki ustawień gotowego pluginu i eksport konfiguracji.

Jak naprawić: W briefie rozdziel trzy rzeczy: co robi gotowa wtyczka, co dopisujemy my i kto odpowiada za aktualizacje po wdrożeniu. Jeśli całość to tylko klikanie w panelu, płacisz za konfigurację, nie za kod.

Lista kontrolna do odklikania

Podsumowanie

Niestandardowy moduł albo wtyczka to przede wszystkim projekt organizacyjny, a dopiero potem zadanie programistyczne. Najwięcej pieniędzy traci się nie na stawce godzinowej, tylko na pracy bez analizy, bez repozytorium i bez środowiska testowego. Jeśli przed startem masz spisany proces, listę przypadków brzegowych i jasny podział odpowiedzialności po wdrożeniu, ryzyko spada bardziej niż przy wyborze tańszego wykonawcy. Podobne zasady porządkowania pracy opisujemy też przy projektach w innych miastach, np. Niestandardowe moduły i wtyczki Krasnobród: organizacja pracy.

Najczęściej zadawane pytania

Czy niestandardowy moduł to to samo co konfiguracja gotowej wtyczki?

Nie. Konfiguracja to ustawienia wtyczki, którą ktoś już napisał — płacisz za czas pracy w panelu, nie za kod. Moduł niestandardowy to oddzielny kod, który rozszerza sklep o logikę nieobsługiwaną przez żadne gotowe rozwiązanie. Granica jest praktyczna: jeśli po ustawieniu wtyczki 20% procesu nadal robisz ręcznie, to sygnał, że potrzebujesz własnego kodu albo integracji.

Od czego zacząć organizację takiego projektu?

Od spisania procesu na papierze i listy przypadków brzegowych. Dopiero potem warto rozmawiać o technologii i wycenie. Dobrze jest też od razu ustalić, gdzie powstaje repozytorium, kto ma do niego dostęp i jak wygląda środowisko testowe.

Pracuję na WordPressie — czy wtyczka niestandardowa wymaga pisania wszystkiego od zera?

Nie zawsze. Część rzeczy można oprzeć na gotowych wtyczkach i dopisać tylko brakujący fragment. Warto wtedy ustalić, co zostaje w gotowym pluginie, a co jest naszym kodem, i pilnować aktualizacji obu części. Jeśli projekt dotyczy warstwy prezentacji, zobacz nasz przewodnik po niestandardowych blokach Elementora: Elementor: niestandardowe bloki responsywne.

Co się dzieje, gdy autor gotowej wtyczki przestanie ją rozwijać?

Najpierw przestają przychodzić aktualizacje pod nowe wersje PHP i sklepu, a po jakimś czasie wtyczka zaczyna generować błędy lub konflikty. Jeśli proces sklepu zależy wyłącznie od niej, robi się problem: trzeba szybko napisać własny odpowiednik albo zaakceptować ręczną obsługę. Dlatego przy krytycznych funkcjach pytamy, kto rozwinie kod, gdy autor zniknie, i kto jest właścicielem rozwiązania.

Czy własny moduł przetrwa aktualizację PrestaShop lub WooCommerce?

Przetrwa, jeśli nie dotyka plików core i korzysta z hooków w sposób przewidziany przez twórców platformy. Po każdej dużej aktualizacji trzeba jednak sprawdzić działanie na stagingu, bo zmiany w hookach i API zdarzają się nawet w wersjach pośrednich. Aktualną listę mechanizmów rozszerzeń znajdziesz w dokumentacji dla deweloperów PrestaShop i w dokumentacji WooCommerce.

Czy da się rozłożyć taki projekt na etapy i nie zamrażać całego budżetu?

Tak i przy większych wdrożeniach zwykle to proponujemy. Pierwszy etap to analiza i prototyp na stagingu, drugi to właściwy kod z testami i przeglądem, trzeci wdrożenie i dokumentacja. Po każdym etapie klient dostaje działający fragment, repozytorium i zapis ustaleń, więc może zdecydować, czy iść dalej.

Jeśli chcesz przejść przez taki projekt etapami — od analizy procesu do wdrożenia z dokumentacją — napisz do nas i opisz krótko, co ma robić moduł. Powiemy wprost, czy wystarczy konfiguracja gotowego rozwiązania, czy potrzebny jest własny kod.

Źródła i materiały