Skip to content

📌 Antworten auf häufig gestellte Fragen [FAQ] #32

@doishub

Description

@doishub

❓ Warum wird die Cookiebar nicht angezeigt?

Grund 1. Das fe_page-Template wurde umbenannt

Der neue Templatename (bspw. fe_page_neu) muss der Cookiebar bekannt gemacht werden. Dafür können wir beliebig viele Templates in der config.yml-Datei aufnehmen. Im folgenden Beispiel ergänzen wir zwei weitere Templates, auf die die Cookiebar zusätzlich reagieren soll.

contao_cookiebar:
  page_templates:
    - fe_page_neu
    - fe_page_neuer

Ab Version 1.8.2 werden Templates, welche mit fe_page_ beginnen, automatisch berücksichtigt.

Grund 2. Die Do not Track-Browsereinstellung wird berücksichtigt

Vor der Version 1.4.5 hat die Cookiebar standardmäßig auf die Do not Track-Browsereinstellung reagiert. Sollte der Browser diese Einstellung also mitgesendet haben, wurde die Cookiebar und dessen Skripte entsprechend unterbunden. Im folgenden Beispiel wird diese Einstellung berücksichtigt:

contao_cookiebar:
  consider_dnt: true

📑 Dokumentation öffnen


❓ Cookiebar-Konfiguration wird nicht im Backend angezeigt?

Du findest die Cookiebar-Konfiguration in der System-Palette unter "Cookiebar". Sollte dieser Menüpunkt nicht angezeigt werden, prüfe bitte, ob die Installation erfolgreich war. Außerdem wird der Menüpunkt teilweise auch von Browser-Erweiterungen ausgeblendet, welche Conent-Tools / Cookiebars automatisch deaktivieren.


❓ Wie kann ich andere Dienste (bspw. OpenStreetMap) blocken?

Andere Dienste, welche über iFrames eingebunden werden, können ganz einfach ergänzt werden. Um einen weiteren iFrame-Typen hinzuzufügen sind zwei Schritte nötig:

Schritt 1: Ein eigenes ce_html-Template anlegen

In diesem Beispiel erweitern wir den Dienst von OpenStreetMap. Hierfür kopieren wir uns einfach das Template ce_html und benennen es in ce_html_openstreetmap um. Sofern Module ebenfalls berücksichtigt werden sollen, kopieren wir uns ebenfalls das mod_html-Template und benennen es in mod_html_openstreetmap.

Schritt 2: Neuen iFrame-Typen im Cookie-Typen iframe ergänzen

Um die Auswahl im Cookie-Typen iframe zu erweitern, können wir unseren eigenen iFrame-Typen über die config.yml-Datei wie folgt ergänzen:

contao_cookiebar:
  iframe_types: 
    openstreetmap:
      - ce_html_openstreetmap
      - mod_html_openstreetmap
      - content_element/html/html_openstreetmap

Nachdem wir den Cache geleert haben, können wir nun den neuen Cookie-Typen erstellen und anschließend unseren Einbettungscode von OpenStreetMap in einem Content-Element HTML (oder Modul) einfügen, das neu angelegte Template auswählen und speichern.

📑 Dokumentation öffnen


❓ Warum werden meine Verlinkungen, welche ich über den Editor einfüge, nicht korrekt aufgelöst?

Sollten Verlinkungen über den Editor (vor allem für die Block-Nachricht innerhalb iFrames) als Insert-Tags eingefügt werden, werden diese fälschlicherweise an die von der Cookiebar generierten Block-URL angehangen. Um das zu umgehen, muss die Domain vorangestellt werden. Der Link, sollte dann wie folgt eingepflegt werden:

{{environment::url}}/{{link_url::3}}

❓ Warum wird Google Analytics / Matomo direkt zu Beginn ausgeführt?

Meist wird die Cookiebar in bestehende Installationen / Projekte integriert. Hierbei wird oft übersehen, dass diese nicht wie bisher mit den analytics_*-Templates arbeitet, sondern die Skripte ausschließlich über die Konfiguration in den spezifischen Cookie-Typen definiert werden dürfen. Daher muss zwingend sichergestellt werden, dass keine analytics_*-Templates mehr über das verwendete Layout eingebunden werden.


❓ Wie kann ich andere Erweiterungen berücksichtigen?

Um andere Erweiterungen zu unterstützen, stehen einige Funktionen zur Verfügung. Sollte eine Erweiterung wie bspw. dlh_googlemap mit eigenen Skript-Initialisierungen arbeiten, kann das Template / die Initialisierung so angepasst werden, dass diese auf die Cookiebar reagieren.

Beispiel 1: Einfache Abfrage auf akzeptieren Cookie
Über die bereitgestellte JavaScript-Methode issetCookie, kann abgefragt werden, ob ein Cookie akzeptiert wurde oder nicht. Diese Methode kann dafür genutzt werden, um die Initialisierung mittels IF-Abfrage zu umschließen:

if(cookiebar.issetCookie(1)){
   // Skript-Initialisierung der Erweiterung
}

Nachteil: Sollte sich das Skript auf der Seite befinden, auf der das entsprechende Cookie über die Cookiebar akzeptiert wurde, muss die Seite erst neu geladen werden, damit das Skript greift.

Beispiel 2: Erweiterte Abfrage mit Möglichkeit einer Block-Nachricht und direkter Skript-Initialisierung:
Die addModule-Methode ermöglicht im Gegensatz zur issetCookie-Methode die Möglichkeit einen Text anzeigen zu lassen, sowie das direkte Initialisieren der externen Skripte. Eine ausführliche Anleitung dazu findet man hier in der Dokumentation.

📑 Dokumentation öffnen

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions