2021 Mai

JTL Shop (5): (Cookie) Consent Manager

Selbst eingebundene Videos via Consent Manager blockieren / freischalten

Im Beispiel sind nur die für den Consent Manager nötigen Attribute definiert, für ein umfangreicheres Beispiel, kann man sich beispielsweise das Core Video OPC-Portlet ansehen (\includes\src\OPC\Portlets\Video\Video.tpl).

<div class="embed-responsive embed-responsive-16by9">
    <iframe class="needs-consent youtube" data-src="https://www.youtube-nocookie.com/embed/VIDEOID"></iframe>
    <a href="#" class="trigger give-consent" data-consent="youtube">Youtube Consent geben</a>
</div>

Das funktioniert so ohne weiteres Zutun, eine eigene Initialisierung o. Ä. ist nicht notwendig.

Javascript

Event-Listener

document.addEventListener('consent.ready', function(e) {
    console.log('consent ready!');
});
document.addEventListener('consent.updated', function(e) {
    console.log('consent updated!');
});

Consent prüfen

if (e.detail !== null && typeof e.detail.youtube !== 'undefined' && e.detail.youtube === true) {
    console.log('youtube consent given');
}

Offizielle Doku (zum jetzigen Zeitpunkt nur für Plugins/PHP dokumentiert): https://jtl-devguide.readthedocs.io/projects/jtl-shop/de/latest/shop_privacy/consentmanager.html?highlight=cookie#jtl-shop-consent-manager