Consentl auf Ghost

Consentl per Code Injection in Ghost einbinden oder im Theme wirklich als erstes im <head> – und welche Ghost-Funktionen Consentl nicht zurückhält.

Loader als erstes im <head>
Hängt von der Methode ab
Methode Als erstes im <head>? Tarif
A. Code Injection Nein: nahe dem Ende des <head> (innerhalb von {{ghost_head}}) Alle Tarife und selbst gehostet
B. Theme default.hbs Ja Ghost(Pro) Publisher oder höher (eigene Themes) oder selbst gehostet

Warum Methode A meist ausreicht. Ghost gibt die Code Injection für den Site-Header am Ende von {{ghost_head}} aus. Fast jedes Skript, das Ghost davor ausgibt, ist verzögert (Portal, Suche, Ankündigungsleiste, Card-Assets, Kommentarzähler, Mitglieder-Attribution, Ghost-Webanalyse), daher läuft ein synchroner Consentl-Loader trotzdem vor ihnen. Dass Consentl zuerst läuft, bedeutet nicht, dass es sie zurückhält: Es sind die eigenen Skripte von Ghost, und Consentl blockiert sie nicht (siehe Einschränkungen). Ausnahmen sind Stripe.js (nur wenn kostenpflichtige Mitgliedschaften aktiv sind) und jedes <script>, das Ihr Theme oberhalb von {{ghost_head}} setzt.

Ihren Consentl-Website-Schlüssel finden Sie auf der Seite Einrichtung Ihrer Website im Dashboard. Tragen Sie den Hostnamen der Publikation im Feld Domains ein; www. und die Domain ohne www zählen als dieselbe Website, www. muss also nicht separat hinzugefügt werden.

Was Ihr Consentl-Tarif abdeckt

  • Free: Banner, Einwilligungsprotokoll und nur manuelle Blockierung.
  • Pro: ergänzt Google Consent Mode v2.
  • Business: ergänzt die automatische Blockierung bekannter Tracker und die Blockierungsregeln, die Sie im Dashboard hinzufügen.

In den Tarifen Free und Pro werden nur Tags zurückgehalten, die Sie manuell markieren.

A. Code Injection

  1. Ghost Admin → Settings → Code injection (in Ghost 5 und 6 unter Advanced; klicken Sie auf Open).

  2. Fügen Sie unter Site header den Loader als erste Zeile ein:

    <script src="https://api.consentl.com/v1/loader.js?k=SITE_KEY&l=en"></script>

    Wenn die Website auch die Consentl-Vorlage für GTM verwendet, hängen Sie &gcm=ext an die URL an, damit nur die Vorlage Consent-Mode-Befehle sendet.

  3. Save.

  4. Prüfen Sie, ob Ihr Theme in default.hbs <script>-Tags oberhalb von {{ghost_head}} hat. Wenn diese Tracker laden, verwenden Sie Methode B.

B. Theme (wirklich als erstes)

  1. Laden Sie Ihr Theme herunter: Settings → Site → Theme → Change theme → Installed, dann laden Sie das aktive Theme über sein Menü herunter.

  2. Fügen Sie in default.hbs den Loader direkt nach <meta charset="utf-8"> ein:

    <head>
        <meta charset="utf-8">
        <script src="https://api.consentl.com/v1/loader.js?k=SITE_KEY&l={{@site.locale}}"></script>
  3. Packen Sie das Theme als ZIP und laden Sie es hoch. Entfernen Sie die Code-Injection-Variante, falls Sie sie hinzugefügt haben.

Extras

  • Link „Cookie-Einstellungen“: Fügen Sie einen Navigationspunkt hinzu (Settings → Site → Navigation, sekundäre Navigation) mit der URL #consentl. Links, deren URL auf #consentl oder #consentl-preferences endet, und jedes Element mit dem Attribut data-consentl-open öffnen die Einstellungen.

  • Cookie-Erklärung: Fügen Sie Ihrer Seite mit der Cookie-Richtlinie eine HTML card hinzu:

    <div data-consentl-declaration data-api="https://api.consentl.com" data-key="SITE_KEY" data-locale="en"></div>
    <script src="https://api.consentl.com/v1/blocks.js" defer></script>

    Verwenden Sie stattdessen data-consentl-request oder data-consentl-withdrawal für das Formular für Datenschutzanfragen oder das EU-Widerrufsformular. Das Widerrufsformular erfordert den Tarif Pro oder höher und muss im Dashboard aktiviert werden; andernfalls bleibt es leer.

  • Code Injection pro Beitrag oder pro Tag läuft nach dem Site-Header; dort ist nichts nötig.

Prüfen, ob es funktioniert

Öffnen Sie die Publikation in einem privaten Fenster: Das Banner erscheint. Sehen Sie im Quelltext nach, wo der Loader steht.

Die Region des Besuchers ergibt sich aus seiner IP-Adresse: Consentl ermittelt das Land bei jedem Seitenaufruf im Arbeitsspeicher (nichts wird gespeichert) und wendet Ihre Dashboard-Regel dafür an. US-Bundesstaaten werden nicht unterschieden: Besucher aus den USA erhalten Ihre Regel für die gesamten USA oder, ohne eine solche, Ihre erste Regel für einen US-Bundesstaat. Ein unbekanntes Land erhält Ihre Regel für unbekannte Regionen (standardmäßig Opt-in).

Einschränkungen

  • Die Mitglieder-Attribution speichert den Browserverlauf vor der Einwilligung. Wenn die Herkunftserfassung für Mitglieder von Ghost aktiv ist, speichert member-attribution.min.js ab dem ersten Seitenaufruf die von einem Besucher angesehenen Seiten im sessionStorage (ghost-history), damit eine spätere Registrierung zugeordnet werden kann. Consentl hält dies nicht zurück. Schalten Sie entweder die Herkunftserfassung für Mitglieder aus (in den Analytics-Einstellungen von Ghost Admin; die Einstellung heißt etwa „Member sources“ / „track member sources“, prüfen Sie die aktuelle Bezeichnung in Ihrer Ghost-Version), oder behandeln Sie es als Ihre eigene rechtliche Entscheidung und beschreiben Sie es in Ihrer Cookie-Richtlinie.

  • Die Webanalyse von Ghost (Tinybird, ghost-stats) ist cookielos und wird von Ghost selbst geladen; die automatische Blockierung von Consentl erfasst sie nicht. Deaktivieren Sie sie unter Settings → Analytics, wenn Ihre rechtliche Bewertung eine Einwilligung erfordert.

  • Stripe.js wird für kostenpflichtige Mitgliedschaften benötigt und ist für Zahlungen unbedingt erforderlich; es wird nicht blockiert.

  • Portal (Registrierung und Anmeldung von Mitgliedern) wird nicht blockiert. Wir konnten der Dokumentation von Ghost nicht entnehmen, welche Cookies oder Speicher es verwendet. Prüfen Sie dies in den DevTools → Application (Cookies, Local Storage, Session Storage) bei einem neuen Besuch und nach der Anmeldung, und führen Sie das Gefundene in Ihrer Cookie-Erklärung auf.

  • Fest eingetragene Tags. Ein <script src>, <img>-Pixel oder <iframe>, das in der Code Injection, im Theme oder in einer HTML card steht, wird vom Browser abgerufen, bevor ein Skript es aufhalten kann, auch wenn Consentl seine Ausführung verhindert. Markieren Sie solche Tags manuell und entfernen Sie <noscript>-Pixel:

    <script type="text/plain" data-consentl="marketing" src="https://ads.example.com/tag.js"></script>
    <iframe data-consentl="marketing" data-src="https://www.youtube-nocookie.com/embed/ID" title="Video"></iframe>
    <img data-consentl="marketing" data-src="https://tracker.example.com/pixel.gif" alt="" width="1" height="1">

    Per Code geladene Tags (GTM, der JavaScript-Loader eines Pixels) werden ohne Anfrage zurückgehalten, wenn die automatische Blockierung aktiv ist (ab Tarif Business).

  • Ghost(Pro) Starter kann keine eigenen Themes hochladen, daher ist nur Methode A verfügbar.

Kommen Sie nicht weiter? Schreiben Sie an support@consentl.com – wir antworten an Werktagen auf Englisch.