Zum Inhalt

Standard-Dienste

ConsentFriend installiert und verwendet die folgenden Standard-Dienste. Alle Dienste werden während des Installationsprozesses optional installiert oder können mit der Alle Dienste YAML-Datei importiert werden.

Grundlegende Dienste

ConsentFriend

Einstellung Wert
Aktiv Ja
Standard Nein
Erforderlich Ja
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: consentfriend
Pfad: ''
Domain: ''

Dieser Dienst kann mit der consentFriend Dienst YAML Datei importiert werden.

Session

Einstellung Wert
Aktiv Ja
Standard Nein
Erforderlich Ja
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: PHPSESSID
Pfad: ''
Domain: ''

Dieser Dienst kann mit der session Dienst YAML Datei importiert werden.

Weitere Dienste

Matomo

Einstellung Wert
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Ja
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: '/^matomo_.*$/i'
Pfad: ''
Domain: ''
Cookie: '/^_pk_.*$/'
Pfad: ''
Domain: ''

Dieser Dienst nutzt zwei MODX System- bzw. Kontext-Einstellungen im Standard Code. Die Einstellungen müssen selbst angelegt werden:

Schlüssel Wert
matomo_site_id Site ID in Matomo
matomo_url URL der Matomo Installation

Code

    <script type="text/javascript">
        var _paq = window._paq = window._paq || [];
        _paq.push(['trackPageView']);
        _paq.push(['enableLinkTracking']);
        (function() {
            var u="[[++matomo_url]]";
            _paq.push(['setTrackerUrl', u+'matomo.php']);
            _paq.push(['setSiteId', [[++matomo_site_id]] ]);
            var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
            g.type='text/javascript'; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
        })();
    </script>
    <noscript><p><img src="[[++matomo_url]]matomo.php?idsite=[[++matomo_site_id]]&rec=1" style="border:0" alt="" /></p></noscript>

Dieser Dienst kann mit der Matomo Dienst YAML Datei importiert werden.

Google Analytics

Einstellung Wert
Code-Abschnitt HEAD
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Ja
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: _ga
Pfad: ''
Domain: ''
Cookie: '/^_ga.*$/'
Pfad: ''
Domain: ''

Dieser Dienst nutzt eine MODX System- bzw. Kontext-Einstellung im Standard Code. Die Einstellung muss selbst angelegt werden:

Schlüssel Wert
google_analytics_id Google Analytics ID

Code

    <script async src="https://www.googletagmanager.com/gtag/js?id=[[++google_analytics_id]]"></script>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
        gtag('js', new Date());

        gtag('config', '[[++google_analytics_id]]');
    </script>

Callbacks

On Init

    function (opts) {
        window.dataLayer = window.dataLayer || [];
        window.gtag = function(){
            dataLayer.push(arguments);
        }
        gtag('consent', 'default', {'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied'});
    }

On Accept

    function (opts) {
        window.dataLayer = window.dataLayer || [];
        window.gtag = function(){
            dataLayer.push(arguments);
        }
        gtag('consent', 'update', {'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'granted'});
    }

On Decline

    function (opts) {
        window.dataLayer = window.dataLayer || [];
        window.gtag = function(){
            dataLayer.push(arguments);
        }
        gtag('consent', 'update', {'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied'});
    }

Dieser Dienst kann mit der Google Analytics Dienst YAML Datei importiert werden.

Google AdSense

Einstellung Wert
Code-Abschnitt BODY
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein

Code

    <script data-ad-client="[[++google_ad_client_id]]" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

Dieser Dienst kann mit der Google AdSense Dienst YAML Datei importiert werden.

Google Fonts

Einstellung Wert
Code-Abschnitt HEAD
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein

Code

    <link href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap" rel="stylesheet">

Dieser Dienst kann mit der Google Fonts Dienst YAML Datei importiert werden.

Cloudflare

Einstellung Wert
Aktiv Nein
Standard Nein
Erforderlich Ja
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: _cflb
Pfad: ''
Domain: ''
Cookie: _cf_bm
Pfad: ''
Domain: ''
Cookie: _cfduid
Pfad: ''
Domain: ''
Cookie: cf_ob_info
Pfad: ''
Domain: ''
Cookie: 'cf_use_ob cookie'
Pfad: ''
Domain: ''

Dieser Dienst kann mit der Cloudflare Dienst YAML Datei importiert werden.

YouTube

Einstellung Wert
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: abc
Pfad: ''
Domain: ''

Dieser Dienst kann mit der Cloudflare Dienst YAML Datei importiert werden.

Google reCAPTCHA

Einstellung Wert
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: IDE
Pfad: ''
Domain: ''
Cookie: 1P_JAR
Pfad: ''
Domain: ''
Cookie: ANID
Pfad: ''
Domain: ''
Cookie: CONSENT
Pfad: ''
Domain: ''
Cookie: NID
Pfad: ''
Domain: ''
Cookie: DVacd
Pfad: ''
Domain: ''

Callbacks

On Toggle
    function(consent, service) {
        var buttons = document.body.querySelectorAll('input[data-name="' + service.name + '"],button[data-name="' + service.name + '"]'), index;
        for (index = 0; index < buttons.length; index++) {
            buttons[index].disabled = !consent;
        }
    }

Dieser Dienst kann mit der Google reCAPTCHA Dienst YAML Datei importiert werden.

Es gibt ein Beispiel für die erweiterte Konfiguration des reCAPTCHA Dienstes.

Facebook Pixel

Einstellung Wert
Code-Abschnitt BODY
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein
Cookies Cookie: xs
Pfad: ''
Domain: ''
Cookie: wd
Pfad: ''
Domain: ''
Cookie: spin
Pfad: ''
Domain: ''
Cookie: c_user
Pfad: ''
Domain: ''
Cookie: locale
Pfad: ''
Domain: ''
Cookie: datr
Pfad: ''
Domain: ''
Cookie: fr
Pfad: ''
Domain: ''
Cookie: presence
Pfad: ''
Domain: ''
Cookie: sb
Pfad: ''
Domain: ''

Code

    <script>
        !function(f,b,e,v,n,t,s)
        { if(f.fbq)return;n=f.fbq=function(){ n.callMethod?
        n.callMethod.apply(n,arguments):n.queue.push(arguments) };
        if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
        n.queue=[ ];t=b.createElement(e);t.async=!0;
        t.src=v;s=b.getElementsByTagName(e)[ 0 ];
        s.parentNode.insertBefore(t,s) }(window, document,'script',
        'https://connect.facebook.net/en_US/fbevents.js');
        fbq('init', '[[++facebook_pixel_id]]');
        fbq('track', 'PageView');
    </script>
    <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=[[++facebook_pixel_id]]&ev=PageView&noscript=1"/></noscript>

Dieser Dienst kann mit der Facebook Pixel Dienst YAML Datei importiert werden.

Google Tag Manager

Einstellung Wert
Code-Abschnitt HEAD
Aktiv Nein
Standard Nein
Erforderlich Nein
Opt-out Nein
Nur einmalig Nein
Nur Kontextbezogene Zustimmung Nein

Code

    <script>(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=
    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','[[++google_tag_manager_id]]');</script>

Callbacks

On Init

    function (opts) {
        // initialization code here (will be executed only once per page-load)
        window.dataLayer = window.dataLayer || [];
        window.gtag = function () {
            dataLayer.push(arguments);
        }
        gtag('consent', 'default', {'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied'});
        gtag('set', 'ads_data_redaction', true);
    }

On Accept

    function (opts) {
        // we notify the tag manager about all services that were accepted. You can define
        // a custom event in GTM to load the service if consent was given.
        for (let k of Object.keys(opts.consents)) {
            if (opts.consents[k]) {
                let eventName = 'consentfriend-' + k + '-accepted';
                dataLayer.push({'event': eventName});
            }
        }
        // if consent for Google Analytics was granted we enable analytics storage
        if (opts.consents['googleAnalytics']) {
            console.log('Google analytics usage was granted!');
            gtag('consent', 'update', {'analytics_storage': 'granted'});
        }
        // if consent for Google Ads was granted we enable ad storage
        if (opts.consents['googleAdSense']) {
            console.log('Google ads usage was granted!');
            gtag('consent', 'update', {'ad_storage': 'granted'});
        }
    }

On Decline

    function (opts) {
        // we notify the tag manager about all services that were declined. You can define
        // a custom event in GTM to unload the service if consent was denied.
        window.dataLayer = window.dataLayer || [];
        window.gtag = function () {
            dataLayer.push(arguments)
        }
        gtag('consent', 'default', {'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied'})
        gtag('set', 'ads_data_redaction', true)
    }

Dieser Dienst kann mit der Google Tag Manager Dienst YAML Datei importiert werden.

Google Maps

Setting Value
Aktiv No
Standard No
Erforderlich No
Opt-out No
Nur einmalig No
Nur Kontextbezogene Zustimmung No

Dieser Dienst kann mit der Google Maps Dienst YAML Datei importiert werden.

Es gibt ein Beispiel für die erweiterte Konfiguration des Google Maps Dienstes.