Das Modul Cookies / Tracking enthält das sgalinski Cookie OptIn, ein einfach integrierbares Modul, das eine Einbettung für Cookies und Tracking-Skripte ermöglicht, die mit DSGVO (GDPR) und ePrivacy konform ist.

Nach der Konfiguration des Cookie OptIns wird jeder neue Besucher Ihrer Webseite ein Fenster mit dem Cookie Consent sehen. Der User bestimmt welche Cookies er zulassen möchte und welche nicht. Essentielle Cookies werden immer akzeptiert, da sie für die Funktion einer Seite von Bedeutung sind.

Neben essentiellen Cookies entscheidet der User, wie mit externen Inhalten und weiteren Cookie und Script-Gruppen (diese teilen Sie selbst ein) verfahren wird.

Die individuelle Auswahl kann der User speichern oder mit nur einem Klick nur essentielle Cookies oder alle Cookies akzeptieren. Schließt ein Seitenbesucher das Fenster, ohne eine Auswahl getroffen zu haben, werden automatisch nur essentielle Cookies geladen.

Sie haben außerdem die Möglichkeit das Cookie Consent nach der Konfiguration in eine Seite zu integrieren, indem Sie das entsprechende Cookie-OptIn Inhaltselement einfügen.

Installation

Die Extension lässt sich einfach aus dem TER beziehen oder per Composer installieren.

Um die Extension per Composer zu installieren, muss einfachcomposer require sgalinski/sg-cookie-optin ausgeführt werden.

Im Anschluss muss in beiden Fällen die Extension noch über das Modul Template hinzugefügt werden und über das Modul Tracking / Cookies konfiguriert werden.

Cookie OptIn zur Instanz hinzufügen

Nach der Installation müssen Sie das statische TypoScript namens Cookie OptIn zu Ihrer Instanz hinzufügen. Gehen Sie wie folgt vor:

  1. Öffnen Sie das Modul Template in Ihrem Backend und wählen innerhalb des Seitenbaums die Seite mit dem Root Template.
  2. Wählen Sie Info/Bearbeiten in der Auswahl oberhalb des Inhaltsbereiches.
  3. Klicken Sie auf die Schaltfläche Vollständigen Template-Datensatz bearbeiten.
  4. Wählen Sie die Registerkarte Enthält
  5. Wählen Sie die Vorlage Cookie Optin (sg_cookie_optin) auf der Mehrfachauswahlbox (rechts) mit dem Namen Statische Templates einschließen (aus Erweiterungen).
  6. Nach einem Klick auf die Auswahl erscheint die Vorlage in der linken Box.
  7. Sichern Sie Ihre Änderungen mit dem Speichern Button über dem Inhaltsbereich.

Verwendete Cookies indentifizieren

Bevor Sie die Cookie OptIn Extension im Backend konfigurieren, sollten Sie Ihre Webseite nach Cookies untersuchen. Nutzen Sie dafür folgendes Tool (öffnen Sie es am besten in einem neuen Tab oder einem neuen Fenster).

Geben Sie, wie unten zu sehen ist, Ihre Homepage-Adresse ein und bestätigen Sie die Eingabe mit Scan Now.

Neben dem Tool haben Sie außerdem die Möglichkeit Ihre Seite manuell nach Cookies zu überprüfen. Folgen Sie dafür dieser Anleitung.

Im Ergebnis erhalten Sie eine übersichtliche Tabelle, wie sie unten zu sehen ist. Aus dieser Tabelle entnehmen Sie die meisten Informationen, die für die Konfiguration der Extension notwendig sind. Im Abschnitt zu der Gruppe essentieller Skripte & Cookies ist beschrieben, welche Daten Sie an welcher Stelle eintragen müssen.

Beachten Sie bitte, dass diese Liste unvollständig sein könnte.

Es reicht außerdem nicht, nur die Homepage nach Cookies zu untersuchen. Es ist wichtig, alle Haupt- und Unterseiten zu scannen.

Denn nur wenn alle Cookies und Tracking-Skripte ausschließlich über die Cookie OptIn Extension geladen werden, ist es möglich eine DSGVO-konforme Webseite zu kreieren. Wenn das der Fall ist, wird das Tool bei erneuter Untersuchung nach der vollständigen Konfiguration keine Ergebnisse mehr liefern können. Sie erhalten in dem Fall den Hinweis: No Cookies Found. Sie müssen so lange Cookies und Skripte in das Cookie Consent einpflegen, bis das Tool auf keiner Seite mehr Cookies findet.

Reiter: Allgemein

Sie sehen in der Abbildungen unten, welche Felder an welchen Stellen im Frontend zu sehen sein werden. Füllen Sie die Felder Titel des Opt-In Fensters bis Link zur Anzeige von Informationen der Cookies einer Gruppe aus.

Füllen Sie nun die vier Felder zu den Cookie Informationstexten aus. Nach diesen vier Informationen werden alle verwendeten Cookies aufgeschlüsselt, hier legen Sie lediglich die Beschriftung fest.

Impressum und Datenschutzerklärung verlinken

Im letzten Schritt verlinken Sie noch das Impressum und die Datenschutzerklärung. Gehen Sie wie folgt vor

  1. Klicken Sie auf den Button Seite oder das Ordersymbol rechts neben dem Feld, wo die Links zu den beiden Seiten eingefügt werden sollen.
  2. Der Seitenbaum erscheint. Klicken Sie auf eine der beiden Seiten (Impressum oder Datenschutzerklärung).
  3. Sie haben nun einen Link zu dieser Seite hinzugefügt und befinden sich wieder im Reiter Allgemein.
  4. Wiederholen das Vorgehen für die andere Seite.

WICHTIG: Auf der Seite Ihrer Datenschutzerklärung sollten Sie einen Button/Link zu den Cookie-Einstellungen einbauen ODER das Cookie Consent Inhaltselement einfügen.

Sollten Sie sich für die Button/Link-Variante entscheiden, muss der User mit einem Klick auf den Button zu den Cookie-Einstellungen gelangen. Dafür legen Sie einen externen Link mit der URL Ihrer Datenschutzerklärung mit dem Parameter ?showOptIn=1 an. Der Link kann dann beispielsweise so aussehen: sgalinski.de/datenschutz/?showOptIn=1. Sollte ein Nutzer bereits entschieden haben, welche Cookies er laden möchte und gelangt zu einem späteren Zeitpunkt auf eine Seite mit dem Parameter ?showOptIn=1, werden die von ihm gewählten Checkboxen wieder angezeigt.

Reiter: Externe Inhalte

Zum Aktivieren des Cookie Consents für Iframes müssen Sie in der Registrierkarte Externe Inhalte ein Häkchen setzen und die Felder Titel und Beschreibung ausfüllen sowie die Texte für die Button-Beschriftungen festlegen. Welche Felder, wo im Frontend erscheinen, können Sie mit den unteren Bildern nachvollziehen.

Farben anpassen

Unter der Spalte Texte (Button-Beschriftungen) befindet sich die Spalte Farben. Hier lassen sich die Box und die Buttons farblich anpassen.

Designvorlagen überschreiben

Es ist außerdem möglich direkt im Backend die Designvorlagen anzupassen oder ganz zu ändern.

Setzen Sie dafür ein Häkchen bei Template des Einstellungsfensters überschreiben, um den Code für das Design des Fensters mit den Einstellungen zu externen Inhalten zu überarbeiten und ein Häkchen bei iFrame-Ersatz-Template überschreiben, um das Template des Fensters zu ändern, das anstelle des iFrames zu sehen ist.

Durch einen überschriebenen Code werden zukünftige Updates nicht mehr automatisch übernommen. Wenn die Option wieder deaktiviert ist, wird das Template wieder zurückgesetzt.

Externer Inhalt bei Nicht-Akzeptieren

Wenn ein User externe Inhalte nicht akzeptiert, werden Iframes nicht geladen und als Box dargestellt. Der Besucher hat nun bei jedem Iframe die Option nur das eine Iframe zu laden. Beim Klick auf den Button Einstellungen öffnen erscheint ein kleines Cookie Consent Fenster (siehe Screenshot unten), dort können alle externen Inhalte oder nur das eine Iframe akzeptiert werden.

Iframe immer anzeigen lassen & Iframe Beschreibung

Wenn es gewünscht ist, lassen sich ausgewählte iFrames immer anzeigen. Solange der externe Inhalt keine Cookies mit sich bringt, ist das DSGVO-konform. Sie können außerdem eine Beschreibung des externen Inhaltes einfügen. Dafür müssen Sie in den HTML-Code des iFrames entsprechende Attribute einsetzen.

  • Beschreibung: data-consent-description
  • Immer öffnen: data-iframe-allow-always

Das iFrame kann z. B. in einem HTML-Inhaltselement erstellt werden. Das iFrame-Tag sieht dann so ähnlich aus, wie hier zu sehen:

<iframe 
width="560" height="315" 
src="https://www.youtube-nocookie.com/XYZ" allowfullscreen 
data-consent-description="Ein wenig Zusatzbeschreibung" 
data-iframe-allow-always="1">
</iframe>

Reiter Template

Im ersten Teil des Reiters Template wählen Sie zunächst zwischen zwei Basis-Designvorlagen. In unserem Beispiel handelt es sich um die umfassende Variante. Ihnen steht außerdem das kompakte Design zur Verfügung.

Oder aber Sie setzten ein Häkchen bei Vorlage überschreiben und passen das Template Ihren Vorstellungen an.

Das Template lässt sich jederzeit im Frontend anzeigen, indem Sie auf den Button Template-Vorschau (unter dem Template-Code) klicken. In einem neuen Tab sehen Sie dann Ihre Seite mit dem aktuellen Design.

Wenn das Template gewählt ist, werden die Farben der einzelnen Komponenten angepasst. Als Erstes legen Sie die Farben des oberen Bereiches und der Überschrift sowie des Textes fest.

Danach folgen die Farben des Fensters, wo der größte Teil des Inhaltes angezeigt wird.

Die Gruppen-Checkboxen befinden sich in unserem Basis-Template links neben der Cookie-Gruppenbezeichnung. Essentielle Cookies und Skripte können eine andere Farbe bekommen als alle weiteren Gruppen.

Zu jedem Button in dem Cookie-Opt-In besteht die Möglichkeit den Hintergrund, das Button-Hover (Mouseover-Effekt zum Anzeigen einer verfügbaren Interaktion) und die Textfarbe verschieden zu gestalten.

Zum Schluss passen Sie noch die Farben der Liste der Gruppendetails und die der Cookie-Beschreibungstabellen an.

Reiter: Banner

Texte & Menü

Mit dem Setzen des Häkchens bei weniger auffälligen Banner wird statt der ausführlichen Variante des Consents ein Banner angezeigt. Selbst wenn der User nicht auf Akzeptieren klickt, bleibt die Website voll funktionsfähig. Die Position des Banners können Sie unten oder oben festlegen. In unserem Beispiel befindet sich der Banner unten. Auch in dieser Form des Cookie Consents weist ein Text den Seitenbesucher auf Cookies hin. Den Erklärungstext fügen Sie in das dafür vorgesehene Feld ein (Erklärungstext im Banner).

Farben

Banner-Farben lassen sich individuell für einzelne Komponenten einstellen: Bannerfarben für Hintergrund und Text sowie Farben für Einstellungen und Akzeptieren-Buttons. Den Einstellungsbutton sollte mit dem Setzen des Häkchens aktiviert werden, wenn Ihre Seite Cookies nutzt.

Banner-Designvorlagen

Wie in den Reitern Externe Inhalte oder Template lassen sich direkt im Backend Änderungen am Design vornehmen. Setzen Sie dafür ein Häkchen bei Vorlage überschreiben.

Durch die Aktivierung dieser Option werden zukünftige Updates nicht mehr automatisch übernommen. Sobald die Einstellung deaktiviert wird, wird das Template wieder auf die Vorlage zurückgesetzt.

Reiter: Gruppe essentieller Skripte & Cookies

Wenn ein Seitenbesucher das Cookie Consent im Frontend aufklappt, sind dort Informationen zu den verwendeten Cookies zu sehen. In diesem Tab müssen Sie alle essentiellen Skripte & Cookies eintragen.

Fügen Sie zunächst einen Gruppentitel ein. Dieser muss nicht unbedingt 'Essentiell' lauten, so wie in unserem Beispiel. Tragen Sie dann die Beschreibung der Cookie-Gruppe ein. Titel und Beschreibung sind auch im zugeklappten Zustand zu sehen.

Die einzelnen Skripte & Cookies, legen Sie im Anschluss an. Klicken Sie dafür jeweils auf den Button Neu anlegen und füllen alle Felder aus. Die notwendigen Informationen zu den Cookies finden Sie in der Tabelle der identifizierten Cookies. Die Namen der Cookies befinden sich in der Spalte Cookies. Unter Description finden Sie den Zweck sowie zumeist auch den Anbieter/Provider der Cookies. Die Lebenszeit entspricht der Spalte Duration.

Schließlich verrät Ihnen die letzte Spalte, wie Sie Ihre Cookies gruppieren können: Wenn ein Cookie als Necessary (notwendig) kategorisiert wird, gehört es zu den essentiellen Cookies. Dieses ist also für die Funktionalität der Webseite unabdingbar Sie müssen es hier hinzufügen.

Reiter: Weitere Skript- und Cookiegruppen

Alle nicht essentiellen Cookie- und Skriptgruppen fügen Sie im Reiter Weitere Skript- und Cookiegruppen hinzu. Bei der Einteilung von Cookies in Gruppen können Sie sich an der Tabelle vom ersten Schritt der Konfiguration orientieren.

Legen Sie eine Gruppe an und pflegen die dazugehörigen Cookies und Skripte ein. Zum Bearbeiten jeder Gruppe stehen drei Unterreiter zur Verfügung. Bei Allgemein tragen Sie einfach den Gruppentitel, den Gruppen-Key für GTM und die Beschreibung ein. Titel und Beschreibung sind im Frontend im nicht aufgeklappten Zustand des Cookie Consents bereits zu sehen.

Im Tab Cookies fügen Sie alle weiteren Cookies genauso hinzu, genauso wie die essentiellen Cookies.

Skripte hinzufügen und bearbeiten

Sie können Skripte als HTML-Code oder als Javascript implementieren. Die Skripte fügen Sie in Ihren angelegten Gruppen unter Skripte hinzu. Sie entscheiden, ob Sie das Skript als HTML oder als Javascript in die Cookie OptIn Extension einbauen. Je nachdem nutzen Sie einfach die dafür vorgesehene Box. Den Reiter Skripte und die Felder zum Eintragen des Codes sehen Sie hier im Screenshot.

Es müssen alle Cookie-bezogenen Skripte zur Konfiguration hinzugefügt werden. Sie dürfen nirgendwo sonst geladen werden!

Hier ist ein Beispiel für den Google Tag Manager gezeigt:

HTML

<script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID">
</script>

<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'GA_MEASUREMENT_ID');
</script>

JavaScript

var script = document.createElement('script');
script.setAttribute('type', 'text/javascript');
script.setAttribute('async', true);
script.setAttribute('src', 'https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID');
document.body.appendChild(script);

window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'GA_MEASUREMENT_ID');

Das sieht in der Cookie OptIn Extension im Backend folgendermaßen aus:

Reiter Einstellungen

Im Tab Einstellungen der Cookie Opt-In Extension können Sie die Laufzeit unseres Cookies anpassen. Nach Ablauf dieser Zeit werden Nutzer erneut aufgefordert werden, das Cookie Consent auszufüllen. Standardmäßig sind 12 Monate eingestellt, hier können Sie diesen Zeitraum anpassen.

Alle CSS- und JavaScript-Dateien sind komprimiert. Sollten Sie das nicht wollen, müssen Sie die das Häkchen bei Erzeugte Dateien minifizieren herausnehmen.

Unser Cookie essentiell, für die Funktion der Cookie OptIn Extension. Es muss gespeichert werden, damit das Tool weiß, welche Cookie-Gruppen der Nutzer akzeptiert hat. Die Struktur unseres Cookies sieht wie folgt aus:

  • Name: cookie_optin
  • Beispieldaten: essential: 1 | analytics: 0 | performance: 1

Die Beispieldaten bedeuten: Der User hat die essentiellen Cookies und Performance-Gruppen akzeptiert, jedoch nicht die Analysegruppen.

Übersetzung

Um den Inhalt zu übersetzen, müssen Sie lediglich über dem Inhaltsbereich die Sprache auswählen, für die Sie eine Übersetzung anlegen möchten. Passen Sie einfach alle Inhalte an diese Sprache an und sichern Sie die Änderungen mit dem Speichern Button über dem Inhaltsbereich.

Integration des Google Tag Managers

Wenn Sie den Google Tag Manager (GTM) nutzen, müssen Sie nach Einbindung & Konfiguration der Cookie Consent Extension Anpassungen im GTM vornehmen. Voraussetzung dafür ist zunächst das Erstellen der entsprechenden Tracking-Gruppen in der Cookie OptIn Extension und das Hinzufügen der GTM Skriptes in allen relevanten Gruppen. Dies vermeidet doppeltes Laden.

Die folgenden Erläuterungen basieren auf den beispielhaften Skript- und Cookiegruppen Analytics und Marketing aus. Die dazugehörigen Gruppen-Keys, die Sie im Reiter Allgemein einer Gruppen eintragen, lauten in unserem Beispiel marketing und analytics.

Das Skript für den Google Tag Manager und den Tab Skripte sehen Sie in den unteren Abbildungen.

Nach der Konfiguration des Cookie Consents auf Ihrer Website müssen Sie nun für eine vollständige und erfolgreiche Integration mehrere Aktionen im GTM durchführen.

document.TagManagerLoaded = document.TagManagerLoaded || 0;
if (!document.TagManagerLoaded) {
  document.TagManagerLoaded = 1;
  (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','YOUR GTM-CODE');
}

Variable angelegen

  1. Gehen Sie im GTM zu Variablen.
  2. Wählen Sie dann Benutzerdefinierten Variablen.
  3. Klicken Sie auf den Button Neu.
  4. Benennen Sie die neue Variable mit 'Cookie Consent' oder Ähnlichem.
    (Den Namen der Variable sehen Sie links oben in der Ecke des Screenshots.)
  5. Klicken Sie auf Variable konfigurieren.
  6. Wählen Sie anschließend First-Party-Cookie.
  7. Tragen Sie Cookie-Namen 'cookie_optin' ein, so wie es im Screenshot zu sehen ist.

Trigger für Consent-Gruppen angelegen

  1. Gehen Sie im GTM zu Trigger.
  2. Wählen Sie den Typen Seitenaufruf.
  3. Wählen Sie die Einige Seitenaufrufe.
  4. Klicken Sie dann im ersten Feld unten die eben erstellte Variable an.
  5. Da es sich um eine OptIn-Lösung handelt wählen Sie im mittleren Feld enthält.
  6. Tragen Sie im dritten Feld Sie den Key einer Cookie- und Skriptgruppe aus der Cookie OptIn Extension mit dem Wert, bei dem Cookies zum Einsatz kommen dürfen, in diesem Fall ist es die 1. In das Feld tragen Sie dann entsprechend unserem Beispiel marketing:1 ein.
  7. Legen Sie für jede Cookie- und Skriptgruppe einen Trigger an.

Trigger in Tags nutzen

Nun müssen Sie die neuen Trigger in Ihren Google Analytics Tags einstellen. Je nachdem welcher Cookie-Gruppe Sie einen Tag zugeordnet haben, passen Sie den entsprechenden Trigger im Tag an. Zum Umstellen des Triggers gehen Sie wie folgt vor:

  1. Gehen Sie im GTM auf Tags.
  2. Klicken Sie auf den Namen des Tags.
  3. Klicken Sie dann auf das Stiftsymbol zum Anpassen des Tags.
  4. Fügen Sie unter Auslösende Trigger den neuen Trigger hinzu.
  5. Entfernen Sie den alten Trigger, indem Sie neben dem Trigger auf Entfernen klicken.

Komplexere Trigger mittels Trigger-Gruppen umsetzen

Komplexere Trigger werden nicht auf jeder Seite ausgeführt. Im GTM müssen diese als Trigger-Gruppe umgesetzt werden. Um eine Trigger-Gruppe anzulegen, gehen Sie wie folgt vor:

  1. Gehen Sie im GTM zu Trigger.
  2. Klicken Sie auf Triggerkonfiguration und wählen Sie dort Trigger-Gruppe aus.
  3. Klicken Sie auf Hinzufügen und wählen mindestens zwei Trigger für die Gruppe aus.
  4. Unter Triggers erscheinen Ihre gewählten Trigger.

Trigger-Gruppen fügen Sie auf die gleiche Art und Weise wie andere Trigger einem Tag bei. In unserem Beispiel sehen Sie, dass die erstellte Trigger-Gruppe Trigger Group Event im Tag UA - Event zu finden ist. Dieses Tag wird nur aktiviert, wenn beide Trigger der Gruppe erfüllt sind.

Sie wollen mehr erfahren?

Alle Informationen zu den verfügbaren Angeboten finden Sie auf den Seiten unserer Website-Base. Sie haben die Möglichkeit eine Webseite zum Fixpreis erstellen zu lassen oder entscheiden sich für ein Website as a Service Paket, mit dem keine weiteren Kosten für Hosting oder Sicherheits- und Funktionsupdates auf Sie zukommen werden.