Skip to main content

Eingebettete Frames

Wenn Sie iFrames verwenden, in denen ein Teil Ihrer Anwendung läuft so kann sich die Problematik ergeben, dass der Consent aus dem Hauptfenster in den iFrame übergeben werden muss.

Dies trifft vor allem zu, wenn die Seite im iFrame über einen eigenen Consent Banner verfügt.

In dem Fall können Sie den Consent aus dem Banner der Hauptseite an den iFrame übergeben - auch wenn der iFrame unter einer ganz anderen URL aufgerufen wird.

Dazu stellen wir eine Funktion zur Verfügung, die Sie beispielsweise im Tag Manager aufrufen können wenn der Banner geschlossen wird.

Die Funktion sieht folgendermassen aus:

dr_reloadAllIframesOnPage();

Ohne Parameter werden einfach alle iFrames auf der aktuellen Seite neu geladen. In diesem Fall wird auch der Consent nirgends übergeben.

In dem Fall funktioniert die Consent - Übergabe nur, wenn die Anwendung im iFrame unter derselben Domain läuft wie die Hauptseite.

Konfiguration

Es kann aber genau konfiguriert werden, welche iFrames neu geladen werden sollen und wer den Consent übermittelt bekommen soll:

var conf = {
appendConsent: true,
whitelist: [],
blacklist: [],
whitelistAppendUrls: [],
blacklistAppendUrls: []
}

dr_reloadAllIframesOnPage(conf);

Die Übermittlung des Consents geschieht dabei durch Anhängen des URL - Parameters __drconsent an die iFrame - Src - URL.

Parameter

conf.appendConsent (Boolean)

  • true: Übergibt den Consent an die iFrames
  • false: Übergibt keinen Consent (default)

conf.whitelist (Array[String,...])

Enthält URLs oder Teile von URLs die im iFrame.src vorkommen müssen, damit sie neu geladen werden.

conf.blacklist (Array[String,...])

Wenn URLs oder Teile von URLs die im iFrame.src definiert sind, in der Blacklist gefunden werden, so wird der iFrame NICHT neu geladen.

conf.whitelistAppendUrls (Array[String,...])

Enthält URLs oder Teile von URLs die im iFrame.src vorkommen müssen, damit der Consent an diese iFrames übergeben wird. Der Consent wird nur an iFrames übergeben, die auch neu geladen werden.

conf.blacklistAppendUrls (Array[String,...])

Wenn URLs oder Teile von URLs die im iFrame.src definiert sind, in der Blacklist gefunden werden, so wird der Consent NICHT an den iFrame übergeben.

Beispiele

Folgende HTML Seite wird für alle Beispiele verwendet:

...
<!-- Interne Applikation -->
<iframe id="debug_iframe" src="https://webcache.datareporter.eu/qa/iframe.html" frameborder="0" width="100%" height="300"></iframe>
...
<!-- Google Maps -->
<iframe src="https://www.google.com/maps/embed?pb=!1m18" width="300" height="300" style="border:0;" allowfullscreen="" loading="lazy"></iframe>
...
<!-- YouTube -->
<iframe width="560" height="315" src="https://www.youtube.com/embed/bC8EmPA6H6g" title="YouTube video player"></iframe>
...
var conf = {
appendConsent: true,
whitelist: ["webcache.datareporter.eu"]
}

dr_reloadAllIframesOnPage(conf);
var conf = {
blacklist: ["www.google.com"]
}

dr_reloadAllIframesOnPage(conf);
var conf = {
appendConsent: true,
blacklistAppendUrls: ["www.google.com", "www.youtube.com"]
}

dr_reloadAllIframesOnPage(conf);

Konfiguration im Tag Manager

Hier eine gebräuchliche Konfiguration im Tag Manager als benutzerdefiniertes Tag:

screenshot