PS PrestaShop Mittel

DataFirefly PWA — Komplettanleitung

Installieren, konfigurieren und betreiben Sie die PWA: installierbarer Shop, reichhaltige und geplante Push-Kampagnen, Produktalarme, Kundeneinstellungen und Offline-Modus für PrestaShop 8 und 9.

Aktualisiert Modulversion 1.3.1

Übersicht

Das Modul DataFirefly PWA (dfpwa) verwandelt Ihren PrestaShop-Shop in eine Progressive Web App: Kunden installieren ihn auf dem Home-Bildschirm, erhalten Web-Push-Benachrichtigungen und stöbern auch offline weiter. Das Modul ist vollständig eigenständig: Die Verschlüsselung läuft in nativem PHP, ohne Composer, ohne Drittanbieterdienst und ohne Abonnement.

Vier Säulen: ein installierbarer Shop, eine professionelle Push-Engine (reichhaltige, geplante, segmentierte Kampagnen), Automatisierungen (Bestellungen, Warenkörbe, Bestand, Preise) und ein Offline-Modus.

Kompatibilität und Voraussetzungen

  • PrestaShop 8.0 bis 9.x, Einzelshop und Multishop
  • Modul in 7 Sprachen übersetzt: FR, EN, ES, DE, IT, NL, PL
  • Keine Abhängigkeit: weder Composer noch Framework noch externer Dienst
  • HTTPS erforderlich: PWAs und Web-Push existieren über HTTP nicht
  • PHP-openssl-Erweiterung mit der Kurve prime256v1 für die VAPID-Verschlüsselung
  • Cron-Aufgabe für geplante Kampagnen, Produktalarme und Warenkorb-Rückgewinnung

Sind openssl oder prime256v1 nicht verfügbar, wird die Installation mit einer eindeutigen Meldung blockiert. Bitten Sie Ihren Hoster, die Erweiterung zu aktivieren.

Installation

  1. Back-Office: Module > Modul-Manager.
  2. Modul hochladen, dann dfpwa.zip auswählen.
  3. Auf Konfigurieren klicken.
  4. Die im Dashboard angezeigte Cron-URL kopieren und alle 5 bis 15 Minuten in Ihrem Planer aufrufen lassen.

Bei der Installation erzeugt das Modul Ihre VAPID-Schlüssel und ein Cron-Token, legt seine Tabellen an, installiert die Kampagnenseite und fügt den Link „Benachrichtigungseinstellungen“ im Kundenkonto hinzu. Gültige PWA-Symbole sind enthalten, der Shop ist also sofort installierbar, noch bevor Sie eigene hochladen.

Konfiguration

Anwendung und Installation

  • Name und Kurzname: nach der Installation unter dem Symbol sichtbar.
  • Designfarbe und Hintergrundfarbe: Systemleiste und Startbildschirm.
  • Anzeigemodus: standalone empfohlen. Der Modus browser verhindert jede Installation.
  • Start-URL: Seite, die beim Start der App geöffnet wird.
  • Symbole 192 und 512 px: quadratisches PNG oder WebP. Ein zu kleines oder nicht quadratisches Symbol wird abgelehnt und das mitgelieferte Standardsymbol behalten, damit die Installierbarkeit nie bricht.
  • Installationsbanner, Anzeigeverzögerung und iOS-Hinweis.

Installierbarkeits-Diagnose

Das Dashboard prüft Punkt für Punkt, was Chrome vor dem Installationsangebot verlangt: HTTPS, kompatibler Anzeigemodus, gültige Symbole in 192 und 512 px, verfügbare Offline-Fallback-Seite und aktiviertes Modul. Ein Link öffnet das erzeugte Manifest.

Auf iPhone und iPad gibt es keine automatische Aufforderung: Safari verlangt den manuellen Schritt „Zum Home-Bildschirm“. Das ist normal, und das Modul erklärt es dem Besucher. Die Diagnose betrifft also Android und Desktop-Browser. Im Shop meldet der Befehl dfpwaDiagnose() in der Browser-Konsole genau, was blockiert.

Web-Push

  • VAPID-Subject: Kontaktadresse für die Push-Dienste, als mailto: oder https://.
  • Besucher automatisch fragen und Einwilligungstext: sanfte Aufforderung vor dem nativen Browserdialog, DSGVO-konform.
  • Abo-Glocke: sechs Positionen, im Warenkorb und an der Kasse ausblendbar. Sobald der Besucher angemeldet ist, wird die Glocke zur Abkürzung zu seinen Einstellungen.
  • Lebensdauer der Nachricht: wie lange ein Push-Dienst eine nicht zugestellte Benachrichtigung aufbewahrt.
  • Maximale Benachrichtigungen pro Gerät und Tag: 0 deaktiviert das Limit. Transaktionale Nachrichten verbrauchen es nie.
  • Ruhezeiten: in diesem Fenster eingereihte Kampagnen stellt der Cron danach zu. Zwei gleiche Werte deaktivieren die Funktion.
  • Nachrichten pro Cron-Lauf: verringern, wenn Ihr Hoster ein kurzes PHP-Timeout erzwingt.

Offline-Modus

  • Cache-Strategie: stale-while-revalidate (empfohlen), Network-First oder Cache-First.
  • Titel und Meldung der Fallback-Seite sowie eine Liste vorab gecachter URLs.

Warenkorb, Kasse und Kundenkonto bleiben stets vom Cache ausgeschlossen. Den Offline-Modus abzuschalten macht den Shop nicht uninstallierbar: die Fallback-Seite wird weiterhin ausgeliefert, denn ein Browser installiert nur eine App, die offline antworten kann.

Eine Kampagne senden

  1. Öffnen Sie PWA Push im Administrationsmenü.
  2. Geben Sie einen Titel (etwa 50 Zeichen) und eine Nachricht (etwa 120 Zeichen) ein.
  3. Fügen Sie ein Bannerbild per Upload hinzu (JPG, PNG oder WebP, max. 2 MB, ideales Verhältnis 2:1) oder über eine URL. Eine hochgeladene Datei hat Vorrang.
  4. Fügen Sie bis zu zwei Aktionsschaltflächen hinzu, jede mit eigener Beschriftung und URL.
  5. Richten Sie nach Sprache, Kundengruppe, Gerät (iOS, Android, Desktop) und Zielgruppe (alle, registrierte Kunden, Gäste) aus.
  6. Lassen Sie Planen für leer, um sofort zu senden, oder geben Sie ein Datum als JJJJ-MM-TT HH:MM an.
  7. Nutzen Sie den Testmodus, um sich die Benachrichtigung vor einem Massenversand selbst zuzusenden.

Der Testmodus adressiert nur Geräte, die mit einem Kundenkonto mit Ihrer Mitarbeiter-E-Mail-Adresse verknüpft sind. Passt kein Konto, wird der Versand abgelehnt, statt an das ganze Segment zu gehen.

Versand-Warteschlange

Jeder Versand wird eingereiht und in Stapeln verarbeitet. Ein Teil geht sofort raus, den Rest stellt der Cron zu. Ein Bestand von Zehntausenden Abonnenten verursacht daher kein Timeout und keine abgeschnittenen Statistiken. Das Dashboard zeigt, wie viele Benachrichtigungen warten, und erlaubt einen manuellen Lauf.

Verlauf und Statistiken

Der Verlauf listet die letzten dreißig Kampagnen mit Status, Empfängern, Zustellungen, Fehlern, Klicks und Klickrate. Ein Klick wird der Kampagne zugeordnet, die die Benachrichtigung erzeugt hat, und der Zähler kann die Zahl tatsächlich zugestellter Nachrichten nie überschreiten. Abonnenten lassen sich als CSV exportieren.

Automatisierungen

Bestellverfolgung

Wählen Sie die Status aus, die eine Benachrichtigung auslösen. Standard: Zahlung angenommen, versendet, geliefert. Kein Häkchen bedeutet: bei jeder Statusänderung benachrichtigen.

Warenkorb-Rückgewinnung

Der Cron erkennt Warenkörbe mit Artikeln, die einem angemeldeten Kunden zugeordnet und ohne Bestellung sind, innerhalb des konfigurierten Fensters (1 bis 168 Stunden).

Wieder-verfügbar- und Preissenkungs-Alarme

Auf der Produktseite erscheint eine Schaltfläche. Die Wieder-verfügbar-Schaltfläche wird nur bei nicht lieferbaren Produkten angezeigt, die für Preissenkungen immer. Der Besucher braucht kein Konto: der Alarm hängt am Abonnement seines Geräts. Der Preis zum Zeitpunkt der Anfrage wird gespeichert, und Sie legen den Mindestprozentsatz der Senkung fest, der den Alarm auslöst.

Willkommensbenachrichtigung

Wird einmalig gesendet, bei der ersten Anmeldung eines Geräts. Sie bestätigt die Anmeldung und wird von den Kundeneinstellungen nie blockiert.

Einstellungen des Kunden

Im Konto öffnet der Kunde Benachrichtigungseinstellungen und schaltet vier Kategorien ein oder aus:

  • Bestellaktualisierungen: Versand und Statusänderungen
  • Produktalarme: wieder verfügbar und Preissenkungen
  • Warenkorb-Erinnerungen: Rückgewinnung des abgebrochenen Warenkorbs
  • Angebote und Neuigkeiten: Marketingkampagnen

Standardmäßig ist alles aktiv, auch für bestehende Abonnenten nach einem Update. Die Auswahl gilt für alle Geräte des Kunden, und ein neues Gerät übernimmt seine Einstellungen. Eine abgeschaltete Kategorie wird nie gesendet, selbst bei transaktionalen Nachrichten, die Tageslimit und Ruhezeiten ignorieren.

DSGVO

  • Einwilligung wird vor jeder Anmeldung mit einer ausdrücklichen Meldung eingeholt
  • Der Kunde verwaltet seine Kategorien im Konto und kann alles abschalten
  • Das Löschen eines Kundenkontos entfernt Abonnements, Produktalarme und eingereihte Nachrichten über den DSGVO-Hook von PrestaShop
  • Keine Daten gehen an einen Drittanbieterdienst: die Verschlüsselung läuft auf Ihrem Server

Anpassung durch das Theme

  • data-dfpwa-bell an einem Element macht daraus eine Abo-Schaltfläche und ersetzt die schwebende Glocke.
  • data-dfpwa-share an einem Element macht daraus eine native Teilen-Schaltfläche.
  • Die Klasse dfpwa-prefs-form bleibt bewusst ohne Stil für Ihre eigenen CSS-Regeln.

FAQ und Fehlerbehebung

Das Installationsbanner erscheint auf Android nicht

Chrome zeigt nichts an, solange der Shop die Kriterien nicht erfüllt. Prüfen Sie die Diagnose im Dashboard und führen Sie dann dfpwaDiagnose() in der Browser-Konsole im Shop aus: das Ergebnis nennt, was fehlt. Wenn die PWA auf dem Gerät bereits installiert war, deinstallieren Sie sie und löschen Sie die Website-Daten vor dem nächsten Test. Eine vom Besucher gemerkte Ablehnung verfällt nach 30 Tagen oder sofort mit dfpwaResetPrompts().

Auf dem iPhone lässt sich nichts installieren

Das ist das normale Verhalten von Safari, das keine automatische Aufforderung kennt. Die Anleitung „Zum Home-Bildschirm“ des Moduls erklärt die Schritte. Web-Push funktioniert dort erst ab iOS 16.4 und nur bei installiertem Shop.

Benachrichtigungen werden nicht versendet

Prüfen Sie, ob Push aktiviert ist, die VAPID-Schlüssel vorhanden sind und Kunden sich angemeldet haben. Der Testmodus prüft die gesamte Kette. Bleiben Nachrichten in der Warteschlange, kontrollieren Sie, ob der Cron wirklich aufgerufen wird.

Eine Kampagne bleibt ausstehend

Sie ist entweder für ein späteres Datum geplant, während der Ruhezeiten eingereiht oder wird gerade in Stapeln zugestellt. Im Dashboard lässt sich ein Lauf erzwingen.

Ein Kunde sagt, er erhalte nichts mehr

Sehen Sie in seinen Benachrichtigungseinstellungen nach: vielleicht hat er eine Kategorie abgeschaltet. Prüfen Sie auch das Tageslimit pro Gerät und die Ruhezeiten.

Produktalarme lösen nicht aus

Sie hängen vom Cron ab. Prüfen Sie, dass er läuft, dass die Alarmart aktiviert ist und bei Preissenkungen, dass der Rabatt den konfigurierten Mindestprozentsatz erreicht.

War diese Seite hilfreich?

Immer noch nicht weiter? Support kontaktieren