Gast-Gate-Themenkomponente

Ich habe ein Analytics-Tracking-System für Guest Gate v2.0 implementiert, das volle GTM- (Google Tag Manager-) Unterstützung und flexibles Logging benutzerdefinierter Ereignisse bietet.

Hinzugefügte Einstellungen

  • enable_analytics (standardmäßig deaktiviert): Schaltet die gesamte Tracking-Funktionalität auf Wunsch ein oder aus.

  • analytics_debug_logging: Wenn aktiviert, werden alle erfassten Ereignisse direkt in der Browser-Konsole protokolliert. Dies ist besonders hilfreich während der Einrichtung beim Konfigurieren von GTM-Triggern.

Kernfunktionalität

Ein dediziertes Helper-Modul (guest-gate-analytics.js) übernimmt das Versenden von Ereignissen. Jedes erfasste Ereignis wird gleichzeitig an zwei Ziele gesendet:

  1. window.dataLayer.push(...): Wird automatisch von Google Tag Manager (GTM) und Google Analytics 4 (GA4) übernommen, sofern diese auf der Website aktiv sind.

  2. discourse-guest-gate:analytics (Benutzerdefiniertes Browser-Ereignis): Ermöglicht die Integration mit Drittanbieter-Tools (z. B. Matomo, Plausible oder benutzerdefinierte Webhooks), ohne dass weitere Codeänderungen erforderlich sind.

Erfasste Ereignisse

  • guest_gate_shown (Wird ausgelöst, wenn das Modal erscheint)

    • guest_gate_reason: Der Auslösetyp (page_view, time, scroll oder lightbox).

    • guest_gate_path: Der URL-Pfad, an dem das Modal angezeigt wurde.

  • guest_gate_click (Wird ausgelöst, wenn der Besucher mit dem Modal interagiert)

    • guest_gate_click_action: Die spezifisch ausgeführte Aktion (login, signup, sso_login, sso_signup, external_<provider> wie der Google-Login-Button oder dismiss, wenn es ohne Aktion geschlossen wurde).

    • Enthält dieselben reason- und path-Metadaten, um Interaktionen leicht mit Anzeigetriggern in Verbindung zu bringen.

Datenschutz & Datensicherheit

  • Es werden keine personenbezogenen Daten (PII) erfasst oder übertragen, nur die oben aufgeführten minimalen operativen Metadaten.

Demnächst verfügbar…:rocket:

> ./support --coffee

3 „Gefällt mir“

Guest Gate v2.0 - Ein großes Update

Nach einer guten Portion Arbeit freue ich mich, Guest Gate v2.0 veröffentlichen zu können. :tada:

Guest Gate begann als relativ einfaches Theme-Component, das auf dem ursprünglichen Guest Gate Sign Up Popup-Plugin basierte. Es ermöglichte es, anonyme Besucher dazu zu ermutigen oder sie dazu zu zwingen, sich nach dem Ansehen einer bestimmten Anzahl von Themen anzumelden oder einzuloggen.

Im Laufe der Zeit wuchs das Component erheblich an, und die ursprüngliche Implementierung wurde zunehmend schwerer erweiterbar.

Daher ist v2.0 nicht nur ein Refactor oder ein visuelles Update. Es führt ein völlig neues Trigger-System, bessere Anpassungsmöglichkeiten, optionale Analysen und eine Reihe von Verbesserungen unter der Haube ein.

Was ist neu in v2.0?

Mehrere Trigger-Typen

Guest Gate ist nicht mehr auf Themen- oder Seitenaufrufe beschränkt.

Du kannst das Gate nun basierend auf folgenden Faktoren auslösen:

  • Seitenaufrufe

  • Zeit

  • Scroll-Tiefe

  • Öffnen von Lightbox/Bild

  • Beliebig - löst das Gate aus, wenn die erste konfigurierte Triggerbedingung erfüllt ist

Jeder Trigger hat seine eigene konfigurierbare Schwelle.

Du kannst auch eine Verzögerung zwischen dem Trigger und dem Erscheinen des Modals konfigurieren.

Damit ist es möglich, verschiedene Arten von Gates zu erstellen, zum Beispiel:

Zeige das Gate nach 3 Seitenaufrufen an.

oder:

Zeige das Gate nach 60 Sekunden an.

oder:

Zeige das Gate an, wenn der Besucher 70 % der Seite gescrollt hat.

Wiederholungsverhalten

Das alte Verhalten mit zufälligen Seitenaufrufen wurde zu einem richtigen Wiederholungssystem ausgebaut.

Du kannst zwischen folgenden Optionen wählen:

  • Trigger wiederholen: Zeige das Gate an, wann immer der konfigurierte Trigger ausgelöst wird.

  • Zufällige Seitenaufrufe: Zeige das Gate nach einer zufälligen Anzahl von Seitenaufrufen an.

  • Einmal pro Sitzung: Zeige das Gate höchstens einmal während der Browsersitzung an.

Das bestehende Verhalten „nur einmal anzeigen“ wird auch aus Gründen der Abwärtskompatibilität beibehalten.

Bessere Modal-Anpassung

v2.0 bietet mehr Kontrolle über das Modal selbst.

Du kannst nun Folgendes konfigurieren:

  • Modal-Größe: kompakt, standard oder breit

  • Ausrichtung des Inhaltsbereichs

  • Ausrichtung des Fußbereichs

  • Sichtbarkeit des Titels

  • Positionierung des Titels

  • Stil und Icon des Login-Buttons

  • Stil und Icon des Anmelde-Buttons

Das benutzerdefinierte Gate wurde ebenfalls verbessert und bietet bessere Kontrolle über:

  • Bildausrichtung

  • Bildbreite

  • Alternative Textbeschreibung des Bildes

  • Ausrichtung und Farbe der Überschrift

  • Ausrichtung und Farbe des Textes

  • Hintergrundfarbe

  • Farben des Fußbereichs und der Links

Das benutzerdefinierte Bild ist nun optional und verwendet auch Lazy Loading und Decoding-Hints.

Analysen (Analytics)

Guest Gate v2.0 enthält optionale, datenschutzfreundliche Analysen.

Wenn aktiviert, erfasst Guest Gate Folgendes:

  • Gate-Eindrücke (Impressions)

  • Trigger-Grund

  • Seitenpfad

  • Klicks auf Login

  • Klicks auf Anmelden

  • SSO-Aktionen

  • Schließen-Aktionen

Die Ereignisse werden über window.dataLayer bereitgestellt und auch als Browser-Event ausgelöst:

discourse-guest-gate:analytics

Dies ermöglicht es, Guest Gate mit Analyse- und Tag-Management-Plattformen wie Google Analytics, Google Tag Manager, Matomo oder benutzerdefinierten Analyse-Implementierungen zu integrieren.

Guest Gate erhebt keine persönlichen Daten.

Analysen sind standardmäßig deaktiviert.

Bestehende Installationen

Ein wichtiger Aspekt von v2.0 ist, dass bestehende Konfigurationen nicht manuell neu erstellt werden müssen.

Eine Einstellungen-Migration wurde hinzugefügt, um die alten Guest-Gate-Einstellungen auf ihre v2-Äquivalente zu übertragen.

Dies umfasst Einstellungen wie:

  • max_guest_topic_views

  • dismissable_false

  • gate_show_when_thumbnail_clicked

Bestehende Konfigurationen sollten daher nach dem Upgrade weiterhin funktionieren.

Das Component erfordert jetzt offiziell Discourse 3.2.0 oder neuer.

Warum v2.0?

Das ursprüngliche Guest Gate wurde primär dafür konzipiert, zu begrenzen, wie viele Themen anonyme Besucher ansehen konnten.

Das Ziel von v2.0 ist es, es viel flexibler zu machen.

Guest Gate kann nun als allgemeines Gate für die Conversion und Interaktion von Besuchern verwendet werden, während der ursprüngliche Anwendungsfall weiterhin unterstützt wird.

Zum Beispiel kannst du es verwenden, um die Registrierung zu fördern, nachdem ein Besucher Folgendes getan hat:

  • Mehrere Themen gelesen hat

  • Eine bestimmte Zeit auf der Site verbracht hat

  • Einen Artikel gescrollt hat

  • Ein Bild geöffnet hat

  • Eine beliebige Kombination der konfigurierten Bedingungen erreicht hat


Dies war ein ziemlich umfangreicher Rewrite, daher bin ich sicher, dass es noch Dinge geben mag, die verbessert werden können.

Danke an alle, die Guest Gate über die Jahre hinweg verwendet, getestet und Feedback gegeben haben. :heart:

Ich habe auch den OP aktualisiert.

Guest Gate v2.0 ist jetzt verfügbar. :rocket:

> ./support --coffee :heart:

4 „Gefällt mir“