PS PrestaShop Średnio zaawansowany

DataFirefly PWA: kompletny przewodnik

Instalacja, konfiguracja i wykorzystanie PWA: sklep instalowalny, webowe powiadomienia push, odzyskiwanie koszyka przez cron i tryb offline dla PrestaShop 8 i 9.

Zaktualizowano Wersja modułu 1.0.0

Prezentacja

Moduł DataFirefly PWA (dfpwa) zamienia Twój sklep PrestaShop w Progressive Web App: klienci mogą zainstalować go na ekranie głównym, otrzymywać webowe powiadomienia push i przeglądać sklep nawet bez połączenia. Moduł jest w pełni samodzielny: szyfrowanie powiadomień obsługiwane jest w natywnym PHP, bez Composera, bez usług zewnętrznych i bez abonamentu.

Trzy filary: sklep instalowalny (ikona na ekranie głównym), powiadomienia push (kampanie, śledzenie zamówienia, odzyskiwanie koszyka) oraz tryb offline (service worker i strona awaryjna).

Kompatybilność

  • PrestaShop 8.0 do 9.x
  • Jeden sklep i multisklep
  • 5 języków: FR, EN, ES, DE, IT
  • Bez żadnych zależności (ani Composera, ani frameworka)

Wymagania wstępne

  • HTTPS obowiązkowo: PWA i web push działają wyłącznie w sklepie serwowanym po HTTPS. Niemal wszystkie sklepy produkcyjne już nim dysponują.
  • Rozszerzenie PHP openssl: używane do szyfrowania VAPID powiadomień. Moduł sprawdza jego obecność podczas instalacji.

Jeśli openssl lub krzywa prime256v1 nie są dostępne na Twoim serwerze, instalacja zostaje zablokowana z czytelnym komunikatem. Skontaktuj się z hostingodawcą, aby włączyć rozszerzenie.

Instalacja

  1. W back-office otwórz Moduły > Menedżer modułów.
  2. Kliknij Wgraj moduł i wybierz plik dfpwa.zip.
  3. Po zainstalowaniu kliknij Konfiguruj.

Podczas instalacji moduł automatycznie generuje Twoje klucze VAPID (publiczny i prywatny) oraz token cron, tworzy tabele subskrypcji i dziennika wysyłek, a także rejestruje stronę konfiguracji kampanii w menu administracyjnym.

Konfiguracja

Aplikacja (PWA)

  • Nazwa aplikacji i nazwa skrócona: wyświetlane pod ikoną po zainstalowaniu sklepu.
  • Kolor motywu i kolor tła: używane w pasku systemowym i na ekranie startowym.
  • Tryb wyświetlania: standalone (pełny ekran, zalecany), fullscreen lub minimal-ui.
  • Adres startowy: strona otwierana przy uruchomieniu zainstalowanej aplikacji.
  • Ikony 192 i 512 px: wgraj własne ikony (PNG lub WebP). W przeciwnym razie automatycznie użyte zostanie logo sklepu.

Baner instalacji

  • Wyświetlaj baner: proponuje instalację uprawnionym odwiedzającym.
  • Opóźnienie wyświetlania: liczba sekund przed pojawieniem się banera, aby nie przeszkadzać przy wejściu na stronę.
  • Pomoc dla iOS: wyświetla przewodnik krok po kroku „Dodaj do ekranu głównego” dla użytkowników Safari na iPhonie i iPadzie.

Na iOS instalacja nie może zostać uruchomiona automatycznie przez witrynę: odbywa się obowiązkowo przez menu udostępniania Safari. Wbudowany przewodnik objaśnia odwiedzającemu każdy etap.

Powiadomienia push

  • Włącz push: zezwala na subskrypcję i wysyłkę powiadomień.
  • Wcześniejsza zgoda: wyświetla wyraźny komunikat przed natywnym pytaniem przeglądarki, zgodnie z RODO.
  • Opóźnienie przed pytaniem: czas oczekiwania przed zaproponowaniem subskrypcji push.
  • Temat VAPID: adres kontaktowy (mailto lub URL) przekazywany serwerom push, zgodnie ze specyfikacją.
  • Powiadomienie przy zmianie statusu zamówienia: automatycznie informuje klienta (na przykład o wysyłce zamówienia).
  • Odzyskiwanie porzuconych koszyków i opóźnienie przypomnienia: uruchamia powiadomienie po koszyku pozostawionym bez zamówienia.

Tryb offline

  • Włącz tryb offline: rejestruje service worker i stronę awaryjną.
  • Strategia cache: stale-while-revalidate (natychmiastowe wyświetlenie i aktualizacja w tle, zalecana), network-first lub cache-first.
  • Tytuł i komunikat offline: teksty wyświetlane na stronie awaryjnej.
  • Wstępny cache: lista adresów URL zapisywanych w cache już przy instalacji service workera.

Strony wrażliwe (koszyk, proces zamówienia, konto klienta) są zawsze wykluczone z cache, aby nigdy nie serwować nieaktualnych treści na danych osobowych lub transakcyjnych.

Udostępnianie

Włącz natywny przycisk udostępniania, aby klienci mogli udostępnić kartę produktu przez okno udostępniania swojego urządzenia (Web Share API). Dodaj atrybut data-dfpwa-share do dowolnego elementu motywu, aby uczynić z niego wyzwalacz udostępniania.

Powiadomienia push: zasada działania

Moduł implementuje standardowy web push (VAPID i szyfrowanie zgodne z RFC 8291 oraz 8188), w całości w PHP przez openssl. Żadne dane subskrypcji nie opuszczają Twojego serwera.

Wysłanie kampanii

  1. Otwórz stronę Kampanie push w menu administracyjnym.
  2. Wpisz tytuł, treść i adres docelowy.
  3. W razie potrzeby ustaw kierowanie według języka i grupy klientów.
  4. Użyj trybu testowego, aby wysłać powiadomienie do siebie przed wysyłką masową, a następnie zatwierdź.

Powiadomienia wysyłane są równolegle w partiach, a wygasłe subskrypcje (kody 404 i 410) są automatycznie czyszczone. Każda wysyłka jest zapisywana w dzienniku wraz z liczbą odbiorców, dostarczeń i kliknięć.

Wyzwalacze automatyczne

  • Śledzenie zamówienia: przy każdej zmianie statusu subskrybujący klient otrzymuje powiadomienie (o ile zgodził się na push).
  • Porzucony koszyk: zadanie cron wyszukuje koszyki zawierające produkty, przypisane do subskrybującego klienta i bez zamówienia, w skonfigurowanym oknie przypomnienia.

Odzyskiwanie koszyka działa przez zadanie cron chronione tokenem. Pobierz pełny adres cron ze strony konfiguracji i dodaj go do swojego harmonogramu (na przykład co godzinę). Token zapobiega nieautoryzowanemu uruchomieniu.

Tryb offline: zasada działania

Service worker jest rejestrowany w zasięgu głównym sklepu dzięki nagłówkowi Service-Worker-Allowed, co pozwala mu kontrolować wszystkie strony. W zależności od wybranej strategii serwuje strony z cache, z sieci lub z obu źródeł. Gdy połączenie zostaje całkowicie utracone i żadna wersja w cache nie jest dostępna, wyświetla się samodzielna strona awaryjna w kolorach Twojego sklepu, z przyciskiem „Spróbuj ponownie” i powrotem na stronę główną.

Panel

Strona konfiguracji pokazuje od razu liczbę subskrybentów push, liczbę wysłanych powiadomień oraz współczynnik kliknięć Twoich kampanii. Ponieważ wygasłe subskrypcje są czyszczone automatycznie, statystyki pozostają wiarygodne.

FAQ i rozwiązywanie problemów

Baner instalacji się nie pojawia

Sprawdź, czy sklep jest serwowany po HTTPS, czy moduł jest włączony i czy PWA nie została już zainstalowana. W przeglądarce na komputerze instalacja odbywa się zwykle przez dedykowaną ikonę w pasku adresu. Na iOS skorzystaj z przewodnika „Dodaj do ekranu głównego”.

Powiadomienia nie są wysyłane

Upewnij się, że push jest włączony, że klucze VAPID są obecne (w przeciwnym razie na panelu pojawia się ostrzeżenie) i że klienci rzeczywiście się zapisali. Tryb testowy pozwala zweryfikować cały łańcuch wysyłki od początku do końca.

Odzyskiwanie koszyka się nie uruchamia

Sprawdź, czy adres cron jest wywoływany przez Twój harmonogram i czy zawiera właściwy token. Zweryfikuj też skonfigurowane opóźnienie przypomnienia oraz obecność subskrybujących klientów z kwalifikującym się koszykiem.

Czy push działa na iPhonie?

Tak, od iOS 16.4, ale wyłącznie po zainstalowaniu sklepu na ekranie głównym. Przewodnik instalacji dla iOS jest więc kluczowy, aby uruchomić push na tych urządzeniach.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia