Integraties
Drie manieren om de consentdone-banner toe te voegen — geen ervan heeft een API-sleutel nodig: je configuratie wordt automatisch server-side gekoppeld via je domein.
1. Eén-regel-snippet (elke website)
Voeg deze regel zo hoog mogelijk in de <head> van je pagina toe —
vóór eventuele analyse- of marketingtags:
<script src="https://cdn.c-done.com/cmp.js"></script> Het script zet Google Consent Mode v2 direct op "denied", laadt je bannerconfiguratie en registreert de toestemming — meer heb je niet nodig.
2. WordPress-plugin
De plugin injecteert cmp.js vroeg in de <head> en levert
een [consentdone_revoke]-shortcode voor een "cookie-instellingen wijzigen"-link.
- Ga in WordPress naar Plugins → Nieuwe plugin → Plugin uploaden, kies de ZIP en installeer deze.
- Activeer de plugin — de CMP is live, verdere configuratie is niet nodig.
- Controleer eventueel Instellingen → consentdone; daar kun je een self-hosting-URL instellen.
- Plaats eventueel de shortcode
[consentdone_revoke label="Change cookie settings"]in een pagina of footer.
3. Google Tag Manager-template
Een GTM-custom-template dat cmp.js via Tag Manager laadt — voor sites
waar je de broncode niet wilt aanraken.
- Open in GTM Templates → klik onder "Tagtemplates" op Nieuw → menu met drie puntjes → Importeren → selecteer het .tpl-bestand → Opslaan.
- Kies onder Tags → Nieuw de consentdone CMP-template; laat de cmp.js-URL ongewijzigd.
- Gebruik de trigger Consent Initialization – All Pages — dit garandeert dat de CMP vóór elke andere tag laadt.
- Test via Voorbeeld en publiceer daarna.
Als "Consent Initialization" niet zichtbaar is: schakel dit in onder
Containerinstellingen → Toestemmingsoverzicht inschakelen.
Consent Mode v2 (standaard "denied", update na toestemming) wordt afgehandeld door
cmp.js zelf — geen extra toestemmingstags nodig in GTM, gebruik gewoon de
ingebouwde toestemmingscontroles op je tags.
4. Welke toestemming stuurt welke dienst aan
cmp.js vertaalt de bannercategorieën naar de vier signalen van Google Consent Mode.
Google-tags (GA4, Google Ads) lezen deze signalen zelf uit — je hoeft ze niet afzonderlijk aan
en uit te zetten in GTM. Stuur je tags dus aan via de juiste categorie, niet via
één allesomvattende schakelaar:
| Bannercategorie | Google-signaal | Typische diensten |
|---|---|---|
| Analytics | analytics_storage | Google Analytics 4 (statistieken) |
| Marketing | ad_storage, ad_user_data, ad_personalization | Google Ads, GA4 Google-signalen, remarketing |
| Functionaliteit | functionality_storage, personalization_storage | Gemaks-/personalisatiecookies |
Belangrijk: wijs GA4 toe aan de categorie Analytics (niet Marketing) —
anders verlies je statistieken van bezoekers die alleen toestemming geven voor analytics. Alleen de
advertentie-/remarketingfuncties horen onder Marketing. En zet de GTM-container zelf niet achter
toestemming: cmp.js zet standaard alles op "denied", dus de container mag altijd laden.
Op categorie, niet op dienst: Google Consent Mode kent alleen categoriebrede signalen — er is geen signaal "per dienst". Het deselecteren van afzonderlijke diensten in de banner (dienstgranulariteit) wist de betreffende cookies, maar verandert niets aan de gtag-signalen van een hele categorie.
Niet-Google-tags (bijv. Microsoft Clarity, Meta Pixel)
Diensten die Consent Mode niet uitlezen, worden in GTM aangestuurd via het dataLayer-event dat
cmp.js bij elke toestemming pusht: cc_consent (bij elke keer laden met geldige
toestemming), cc_first_consent en cc_change. Het bevat de verleende
categorieën in cc_categories.
Voorbeeld Microsoft Clarity (categorie Analytics):
- Maak in GTM een Data Layer Variable
cc_categoriesaan. - Maak een Custom Event trigger aan op
cc_consent, voorwaarde:cc_categoriesbevatanalytics. - Koppel de Clarity-tag aan precies deze trigger — die vuurt dan pas na analytics-toestemming, en opnieuw bij elke paginalading zodra de toestemming aanwezig is.
Doe voor de Meta Pixel hetzelfde met de voorwaarde cc_categories bevat marketing. Optioneel handelt de ingebouwde auto-blocking scripts af
die rechtstreeks in de paginabroncode zijn ingebed (niet via GTM).
Vragen? meikel@korfmacher.at