Programowanie 4 min czytania

Wtyczka WordPress na zamówienie – kiedy ma sens zamiast gotowej

Kiedy własna wtyczka WordPress jest tańsza od dziesięciu gotowych: integracje z API, funkcje, których nikt nie sprzedaje, wydajność sklepu. Jak wygląda proces zamówienia, co dostajesz i ile to trwa.

Repozytorium WordPressa ma kilkadziesiąt tysięcy wtyczek, więc pytanie „po co pisać własną?” jest uzasadnione. Odpowiedź z praktyki: własną wtyczkę piszę wtedy, gdy gotowe rozwiązania robią osiemdziesiąt procent tego, co trzeba, a brakujące dwadzieścia procent decyduje o sprzedaży albo o czasie pracy zespołu. Poniżej sytuacje, w których to się opłaca, i te, w których odradzam.

Kiedy własna wtyczka ma sens

Integracja z systemem, którego nikt nie obsługuje

System rekrutacyjny, program magazynowy, CRM branżowy, hurtownia z własnym API – gotowe wtyczki integracyjne istnieją dla kilku popularnych usług, reszta wymaga kodu. Przykład z mojej praktyki: wtyczka pobierająca oferty pracy z systemu rekrutacyjnego i wyświetlająca je jako zwykłe, indeksowalne strony z wyszukiwarką i filtrami. Oficjalny widżet dostawcy nie był dopasowany do stylu graficznego serwisu klienta i był niewidoczny dla Google.

Schemat integracji: zewnętrzny system, wtyczka WordPress pośrodku, dane zapisywane w bazie i w chmurze, strzałka odpowiedzi zwrotnej
Wtyczka integracyjna pobiera dane z zewnętrznego systemu przez API i zapisuje je w WordPressie jako zwykłe, indeksowalne treści.

Funkcja, którą sklep ma jako jedyny

Kalendarz premier, listy powrotów na stan, bestsellery liczone z realnych zamówień z ostatnich 30 dni, przeceny pokazywane tylko przy prawdziwej obniżce – takich modułów nie kupisz, bo wynikają z tego, jak konkretny sklep sprzedaje. Zestaw sześciu takich modułów opisuję w realizacji dla sklepu z grami.

Zastąpienie kilku wtyczek jedną

Sześć wtyczek do drobnych rzeczy to sześciu autorów, sześć harmonogramów aktualizacji i sześć potencjalnych konfliktów. Jedna własna wtyczka z tymi funkcjami jest lżejsza, a jej utrzymanie sprowadza się do sprawdzenia zgodności przy aktualizacjach WordPressa.

Wydajność

Gotowe wtyczki są pisane na wszystkie możliwe przypadki, więc wczytują więcej danych, niż potrzebujesz. Gdy sklep z kilkuset tysiącami wpisów w bazie zwalnia, własny, wąski kod zamiast uniwersalnej wtyczki potrafi skrócić czas odpowiedzi kilkukrotnie.

Schemat: kilka gotowych wtyczek i modułów zastąpionych jedną własną wtyczką, obok wskaźnik szybkości strony
Jedna wąska wtyczka zamiast kilku uniwersalnych: mniej kodu do wczytania i krótszy czas odpowiedzi strony.

Formularze i procesy wewnętrzne

Zapisy z walidacją specyficzną dla branży, wyceny liczone z parametrów, dostęp do materiałów tylko dla zalogowanych dystrybutorów, rejestr pobrań – to zadania na kilkaset linii kodu, nie na kombinację pięciu wtyczek i ich płatnych dodatków.

Kiedy odradzam

  • Gdy gotowa wtyczka robi dokładnie to, co trzeba i jest aktywnie rozwijana. Własny kod nie jest celem samym w sobie.
  • Gdy chodzi o wygląd, nie o funkcję. Wygląd załatwia motyw potomny i arkusz stylów, nie wtyczka.
  • Gdy funkcja jest potrzebna raz – jednorazowy import danych robi się skryptem, nie wtyczką z panelem.
  • Gdy nikt nie będzie tego utrzymywał. Własna wtyczka wymaga sprawdzenia przy większych aktualizacjach WordPressa i PHP; bez opieki po dwóch latach mogą pojawić się problemy z kompatybilnością.

Jak wygląda proces zamówienia

  1. Opis problemu, nie rozwiązania. Najlepszy brief brzmi: „klient ma widzieć, które produkty wróciły na stan w tym tygodniu”, a nie „proszę wtyczkę z tabelą”. Rozwiązanie wybieramy razem.
  2. Zakres z etapami i ceną za etap – po krótkiej analizie Twojego WordPressa (wtyczki, motyw, hosting), bo to od nich zależy, jak wtyczka może być zbudowana.
  3. Środowisko testowe. Wtyczka powstaje na kopii Twojej strony, z Twoimi danymi. Zobaczysz działającą wersję, zanim cokolwiek trafi na produkcję.
  4. Testy i audyt. Przy sklepach – testy automatyczne kluczowych funkcji i przegląd bezpieczeństwa kodu przed wdrożeniem.
  5. Wdrożenie i dokumentacja. Panel ustawień tam, gdzie ma sens, krótka instrukcja i kod w repozytorium, do którego masz dostęp.

Co dostajesz

  • kod należący do Ciebie – bez licencji na klucz wykonawcy i bez abonamentu za korzystanie,
  • wtyczkę zgodną z regułami WordPressa (własne tabele tylko wtedy, gdy trzeba; ustawienia w panelu; brak zmian w rdzeniu i motywie),
  • zgodność z Twoją wtyczką SEO, pamięcią podręczną i wielojęzycznością, jeśli z nich korzystasz,
  • gwarancję na błędy wykonania i możliwość rozwoju o kolejne funkcje w ramach opieki nad stroną.

Ile to trwa i kosztuje

Prosta integracja z API z dokumentacją – tydzień. Moduł sklepowy z panelem ustawień – dwa do czterech tygodni. Zestaw modułów z testami i audytem – kilka miesięcy etapami. Cena wynika z zakresu i jest rozpisana na etapy; przy stawce godzinowej wiesz, co jest w każdej pozycji. Szczegóły podejścia opisuję na stronie wtyczek i integracji.

Najczęstsze pytania

Czy własna wtyczka przestanie działać po aktualizacji WordPressa?

Wtyczka napisana zgodnie z API WordPressa działa przez lata; wymaga przeglądu przy dużych zmianach rdzenia albo PHP. To ten sam obowiązek, który mają autorzy gotowych wtyczek – tyle że tutaj wiesz, kto go wykona.

Czy wtyczka może trafić do oficjalnego repozytorium?

Może, jeśli chcesz ją udostępnić. Większość wtyczek na zamówienie zostaje prywatna, bo zawiera logikę konkretnej firmy.

Co jeśli zmienię wykonawcę?

Kod jest Twój, w repozytorium, z komentarzami po polsku. Inny programista WordPressa przejmie go bez odgadywania, co autor miał na myśli.

Autor

Kamil Bigaj · OneNet

Właściciel OneNet. Buduje, utrzymuje i pozycjonuje strony firm od ponad 10 lat – jako jeden wykonawca, od wyceny po stałą opiekę.

Powiązana usługa

Programowanie

Strony, sklepy, wtyczki i integracje – na WordPressie albo jako szybka strona statyczna, z zakresem ustalonym przed wyceną.

Chcesz to przeliczyć na swoją stronę?

Napisz, co masz dzisiaj i co chcesz osiągnąć – odpowiem, co zrobiłbym na Twoim miejscu.

Odpowiadam w 24 godziny

Bezpłatna wycena

Napisz, co ma powstać albo co wymaga naprawy. Odpowiada ta sama osoba, która potem wykonuje pracę.