Rozszerzenia Joomla i HikaShop szyte na miarę Twojego sklepu

Gotowa wtyczka rzadko pasuje w stu procentach do konkretnego sklepu czy strony firmowej.

Dlatego zamiast szukać kompromisu, dla swoich klientów na Joomli i HikaShop piszę własne rozszerzenia — od płatności, przez wysyłkę, po dane strukturalne i mapy.

Oto pełny przegląd tego, co dziś mogę dołożyć do sklepu na HikaShop albo do strony firmowej na Joomli.

Dlaczego piszę własne rozszerzenia zamiast szukać gotowych

Wpisz w wyszukiwarkę „najlepsze wtyczki HikaShop" i zobaczysz, jak mało jest wyników. WordPress ma dziesiątki tysięcy wtyczek w oficjalnym katalogu, Joomla i HikaShop — wyraźnie mniej. To częsty argument przeciw Joomli: „za mało gotowych rozwiązań".

Prawda jest inna. Joomla od lat ma jeden z bardziej elastycznych systemów rozszerzeń w PHP — wtyczki, moduły i komponenty można pisać pod dokładnie taki proces, jaki ma dana firma. Nie trzeba czekać, aż ktoś w internecie stworzy dokładnie to, czego potrzebujesz.

Dlatego zamiast szukać kompromisu w gotowym katalogu, dla swoich klientów piszę rozszerzenia od zera — dopasowane do konkretnego sklepu, bramki płatności czy przewoźnika.

Co to daje w praktyce:

  • dokładne dopasowanie — wtyczka robi to, czego potrzebuje dany sklep, bez zbędnych opcji,
  • kontrolę nad kodem — wiem, co dzieje się w środku, mogę szybko naprawić błąd albo dodać funkcję,
  • brak zależności od cudzego wsparcia — nie czekam, aż autor wtyczki z zagranicznego marketu odpowie na zgłoszenie.

Wszystkie rozszerzenia opisane w tym artykule są open source i dostępne publicznie na moim GitHubie (github.com/pablop76). Każde ma wbudowany mechanizm aktualizacji przez panel Joomla — po pierwszej instalacji kolejne wersje pobierasz przez Rozszerzenia → Zarządzaj → Aktualizacje, bez ręcznego wgrywania nowych paczek ZIP.

Sklep, który sam obsłuży płatność, wysyłkę i fakturę

Cztery luki pojawiają się w niemal każdym sklepie na HikaShop zaraz po starcie: brak płatności online, brak paczkomatu w koszyku, brak automatycznych faktur i brak pilnowania cen przy promocjach. Każdą domyka osobna wtyczka.

  • PayU — podłącza sklep do jednej z popularniejszych bramek płatności w Polsce. Klient płaci kartą, BLIK-iem lub przelewem online, a status zamówienia zmienia się sam.
  • InPost — dodaje do koszyka mapę paczkomatów GeoWidget i integrację z ShipX API. Z poziomu zamówienia tworzysz przesyłkę jednym kliknięciem i pobierasz etykietę w PDF.
  • Fakturownia — wystawia fakturę albo paragon automatycznie, gdy zamówienie osiągnie skonfigurowany status, łącznie z korektą przy zwrocie.
  • Omnibus — pilnuje cen przy promocjach. Zapisuje historię cen bazowych i przy każdej obniżce pokazuje najniższą cenę z ostatnich 30 dni, zgodnie z unijną dyrektywą 2019/2161. Bez promocji wtyczka milczy, nie zaśmieca strony produktu.

Te cztery wtyczki opisałem szczegółowo osobno — płatności PayU, wysyłka InPost i faktury z Fakturowni oraz dyrektywa Omnibus w HikaShop. Tutaj chodzi o co innego — pokazać, że działają razem, jako jeden spójny system, a nie zbiór przypadkowych dodatków.

Twoja firma widoczna w Google dzięki Schema.org LocalBusiness

Google nie wie automatycznie, że adres na Twojej stronie to adres firmy, a liczba pod nim to ocena klientów. Trzeba mu to „powiedzieć" w języku, który rozumie — schema.org. Joomla 5 ma wbudowaną obsługę takich danych, ale bez typu LocalBusiness (Lokalna Firma) w standardzie.

Dlatego napisałem wtyczkę plg_localbusiness_schemaorg, która dokłada ten typ do panelu edycji artykułu. W zakładce Schema wybierasz „Lokalna Firma" i uzupełniasz dane wprost przy artykule — bez grzebania w kodzie.

Co obejmuje:

  • nazwę, alias, opis i słowa kluczowe firmy,
  • logo i zdjęcie główne,
  • pełny adres z współrzędnymi geograficznymi oraz linkiem do mapy,
  • telefon, e-mail, godziny otwarcia (wiele reguł naraz),
  • NIP, REGON i inne numery identyfikacyjne,
  • zakres cen i akceptowane formy płatności,
  • linki do social media (Facebook, Instagram, LinkedIn),
  • zbiorczą ocenę klientów.

Efekt: dane firmy trafiają do Google w ustandaryzowanej formie, a to zwiększa szansę na rozszerzony wynik wyszukiwania — adres, godziny albo ocena widoczne wprost pod linkiem, zanim użytkownik jeszcze kliknie. To jeden z fundamentów lokalnego SEO dla firm z fizycznym adresem albo obszarem działania.

Wtyczka wymaga Joomla 5.0 lub nowszej i włączonego systemowego dodatku „System - Schema.org".

Mapa oddziałów i punktów sprzedaży bez Google Maps

Firma z kilkoma oddziałami albo siecią punktów odbioru potrzebuje mapy na stronie. Najprostsze rozwiązanie — wklejony iframe z Google Maps — ma swoje wady: zależność od limitów API Google, generyczny wygląd i pytania o zgodę na cookies stron trzecich.

Dlatego napisałem moduł mod_pposmap — mapę osadzoną bezpośrednio w Joomli, z dwoma dostawcami do wyboru: Mapbox (bardziej rozbudowana stylistyka) albo Leaflet oparty na OpenStreetMap (bez zależności od konta Google, dobry pod RODO).

Każdy punkt na mapie ma swój tytuł, opis, godziny otwarcia, telefon i zdjęcie — dodajesz je w prostym formularzu w panelu administracyjnym, bez kodu. Punkty można też grupować, na przykład osobno oddziały i osobno punkty odbioru, z możliwością włączania i wyłączania grup na mapie.

Dodatkowe ustawienia obejmują zoom początkowy, wysokość mapy osobno dla komputera i telefonu oraz opcjonalną listę punktów pod mapą, widoczną tylko na większych ekranach.

Moduł sprawdza się przy stronach firmowych z siecią lokalizacji, przedstawicielstwach handlowych i punktach partnerskich — wszędzie tam, gdzie zwykła „mapka z pinezką" w stopce już nie wystarcza.

Co to oznacza dla Twojego sklepu lub strony

Sześć rozszerzeń, jeden cel: sklep albo strona, która robi dokładnie to, czego potrzebuje Twoja firma, a nie to, na co pozwala gotowy szablon. Płatność, wysyłka, faktura, zgodność z prawem, widoczność w Google i mapa punktów — każdy element osobno, ale zaprojektowany tak, żeby działał razem.

To też pokazuje, jak elastyczna jest sama Joomla. Nie trzeba czekać na wtyczkę z katalogu — można ją po prostu napisać, dokładnie pod dany proces.

Masz sklep albo stronę na Joomli i brakuje jej czegoś konkretnego? Możliwe, że rozwiązanie to nie kompromis z gotowego katalogu, tylko wtyczka napisana pod Twój problem.

Brakuje Ci konkretnej funkcji w sklepie albo na stronie?

Napiszę wtyczkę albo moduł dopasowany do Twojego procesu — tak jak zrobiłem to już dla płatności, wysyłki, faktur i map dla klientów na Joomli i HikaShop.

Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie w przeglądarce obsługi JavaScript.