Przejdź do treści

BlogB8

Wtyczka na zamówienie czy gotowa z marketplace: jak wybrać

Opublikowano
Czas czytania
5 min
Autor
Jakub Jagiełło

Gotowa wtyczka wystarcza, gdy robi dokładnie to, czego potrzebujesz, jest utrzymywana przez dostawcę i nie wymaga obejść w twoim procesie. Wtyczkę na zamówienie warto rozważyć, gdy gotowe rozwiązania wymagają kompromisów, których nie chcesz zaakceptować, albo gdy musisz połączyć sklep z własnym procesem lub systemem. Obie drogi mają stałe koszty, o których łatwo zapomnieć.

Co dają gotowe wtyczki

Gotowa wtyczka ma kilka zalet:

  • działa od razu, a konfiguracja zajmuje godziny, nie tygodnie,
  • jest używana przez wielu sklepów, więc typowe błędy zwykle ktoś już zgłosił,
  • często ma dokumentację i wsparcie,
  • koszt jest przewidywalny (licencja lub abonament).

To dobry wybór dla funkcji standardowych: płatności, wysyłki, formularze, podstawowe filtry. Nie ma sensu pisać własnej bramki płatności, jeśli działa gotowa i obsługiwana przez dostawcę.

Kiedy gotowa wtyczka nie pasuje do procesu

Sygnały, że kompromis jest za kosztowny:

  • żadna wtyczka nie obsługuje twojej reguły (na przykład niestandardowy sposób liczenia ceny albo nietypowy proces zamówienia),
  • ta sama funkcja wymaga trzech wtyczek, które ze sobą kolidują,
  • wtyczka ma dziesiątki opcji, z których używasz dwóch, a pozostałe obciążają sklep,
  • potrzebujesz połączenia z systemem, dla którego nie ma gotowego konektora,
  • masz obejścia typu „klient wpisuje to w polu uwag, a pracownik ręcznie przenosi”.

Zanim zamówisz własną wtyczkę, sprawdź, czy problemu nie rozwiąże konfiguracja, inne ustawienie sklepu lub rozmowa z dostawcą istniejącej wtyczki o niewielkiej zmianie.

Koszt utrzymania: aktualizacje platformy i zgodność

Wtyczka żyje na platformie, która się zmienia. Dokumentacja WooCommerce zaleca przed każdą aktualizacją kopię zapasową i test na środowisku testowym (staging), a po niej sprawdzenie koszyka, płatności, wysyłki, podatków i e-maili. Każda wtyczka jest częścią tego zestawu testów.

Platforma zmienia także sposób, w jaki wtyczki z niej korzystają. Przykładem jest przechowywanie zamówień w wysokowydajnej strukturze (HPOS). Rozszerzenia deklarują zgodność z tą funkcją w kodzie, a WooCommerce ostrzega użytkowników, gdy próbują ją włączyć przy niezgodnej wtyczce. Portal dla deweloperów WooCommerce publikuje też ostrzeżenia o zmianach technicznych, na przykład o podnoszonych wymaganiach wersji PHP. Ktoś musi to śledzić.

Przy gotowej wtyczce robi to dostawca, ale nie masz gwarancji terminu. Przy wtyczce na zamówienie robi to wykonawca, jeśli jest to uzgodnione w umowie. Pytaj więc przed zamówieniem: kto monitoruje zmiany platformy, w jakim czasie reaguje i ile kosztuje taka usługa.

Własność kodu i dostęp do źródeł

Przy gotowej wtyczce kupujesz licencję na korzystanie. Zwykle nie możesz wprowadzać zmian ani przekazać kodu innej firmie poza zakresem licencji. Warunki sprawdź w regulaminie lub umowie licencyjnej.

Przy wtyczce na zamówienie kwestię trzeba uzgodnić w umowie. Według ustawy o prawie autorskim program komputerowy jest chroniony jak utwór literacki, a prawa majątkowe obejmują zwielokrotnianie, zmiany i rozpowszechnianie. Prawa majątkowe do programu stworzonego przez pracownika w ramach obowiązków przysługują pracodawcy, o ile umowa nie stanowi inaczej, ale wykonawca zewnętrzny to inna sytuacja. Zapisz więc, jakie prawa dostajesz, czy dostajesz kod źródłowy i dokumentację oraz czy możesz zlecić rozwój innemu wykonawcy. To nie jest porada prawna, więc umowę skonsultuj z prawnikiem.

Bezpieczeństwo i jakość kodu

Wtyczka działa wewnątrz sklepu i ma dostęp do danych klientów oraz zamówień, więc błąd bezpieczeństwa może mieć poważne skutki.

Dokumentacja dla deweloperów WordPress opisuje podstawy: dane z zewnątrz, w tym z baz danych i usług trzecich, trzeba traktować jako niezaufane, walidować przy wejściu i escapować przy wyjściu, najlepiej jak najpóźniej. Zaleca korzystanie z funkcji WordPress, które walidują i sanityzują dane, oraz regularne utrzymywanie kodu, bo nowe luki pojawiają się z czasem.

Co możesz sprawdzić:

  • czy wykonawca potrafi opisać, jak zabezpiecza dane wejściowe i wyjściowe,
  • czy kod ma kontrolę wersji i testy,
  • czy wtyczka deklaruje zgodność z funkcjami platformy, na przykład HPOS,
  • czy ma jasny sposób zgłaszania błędów i poprawek,
  • w przypadku gotowych wtyczek: kiedy ostatnio były aktualizowane i czy dostawca informuje o poprawkach bezpieczeństwa.

Nie bierz na wiarę ocen w katalogu. Oceny pokazują zadowolenie użytkowników, ale nie zastępują przeglądu kodu.

Jak opisać potrzebę wykonawcy

Dobre zamówienie wtyczki zaczyna się od procesu, a nie od rozwiązania technicznego:

  1. Opisz sytuację dziś: co robi klient, co robi pracownik, gdzie powstaje problem.
  2. Opisz oczekiwany stan: kto, co i kiedy ma móc zrobić.
  3. Wymień systemy i wtyczki, z którymi ma współpracować.
  4. Podaj wersje platformy i hosting.
  5. Zaznacz przypadki brzegowe: zwroty, anulowanie, kilka walut, warianty produktów.
  6. Ustal sposób odbioru: scenariusze testowe i środowisko testowe.
  7. Ustal utrzymanie: kto aktualizuje, ile to kosztuje, jak zgłasza się błędy.

Więcej o tym, jak napisać zapytanie, znajdziesz w poradniku o zapytaniu ofertowym na aplikację, a zasady bezpiecznych aktualizacji w poradniku o aktualizacji WooCommerce.

Rozwiązanie pośrednie: gotowa wtyczka z małą dobudówką

Nie musisz wybierać jednego bieguna. Czasem rozsądnie jest zostać przy gotowej wtyczce, która robi większość pracy, i zamówić tylko brakujący element: małe rozszerzenie, konektor albo dodatkowe pole. Warunkiem jest to, żeby gotowa wtyczka miała udokumentowane punkty rozszerzeń i żeby dobudówka nie zmieniała jej kodu bezpośrednio, bo każda aktualizacja nadpisałaby zmiany. Zapytaj dostawcę, jakie ma haki i interfejsy, zanim ustalisz zakres.

Podsumowanie

Wybierz gotową wtyczkę, gdy proces jest standardowy, a dostawca jest wiarygodny i utrzymuje produkt. Zamów własną, gdy gotowe rozwiązania wymagają obejść albo gdy chodzi o połączenie z własnym systemem. W obu przypadkach policz utrzymanie, ustal prawa do kodu i sprawdź, kto odpowiada za zgodność z kolejnymi wersjami platformy. Jeśli potrzebujesz wtyczki lub konektora do sklepu, zobacz usługi M8T.

Źródła

  1. WooCommerce: jak aktualizować WooCommerce (kopia, staging, testy)
  2. WooCommerce Developer Docs: High-Performance Order Storage, deklaracja zgodności
  3. WooCommerce Developer Resources: portal dla deweloperów (wydania, ostrzeżenia dla deweloperów)
  4. WordPress Developer Resources: bezpieczeństwo (walidacja, sanityzacja, escapowanie)
  5. Ustawa o prawie autorskim i prawach pokrewnych, art. 74

Pytanie

Podaj, jakie systemy masz i czego w nich brakuje. Wystarczy kilka zdań.

Napisz maila

Powiązane

Czytaj dalej

  1. B16

    CRM dla handlowców w terenie: co powinien mieć

    Zadania, notatki, wizyty z mapą i raportem: jakie funkcje CRM naprawdę pomagają handlowcom w terenie i jak połączyć CRM z ERP.

    Blog, 5 min

  2. B15

    Ile kosztuje aplikacja webowa i od czego zależy cena

    Od czego zależy cena aplikacji webowej: zakres, integracje, uprawnienia, dane i utrzymanie. Jak czytać wycenę i porównywać oferty.

    Blog, 6 min

  3. B14

    Ceny dla klientów B2B: cenniki, grupy cenowe i rabaty

    Jak zorganizować ceny dla klientów firmowych: cenniki, grupy cenowe, rabaty ilościowe i ceny indywidualne. Gdzie trzymać źródło cen.

    Blog, 6 min