Quickly add the Iubenda's cookie policy banner to your Gatsby site. Optionally, it integrates the
Iubenda acceptance with Google Tag Manager.
Install
npm install --save gatsby-plugin-iubenda-cookie-footer
What this plugin does
- it adds the Iubenda cookie footer
- (optional) it integrates the Iubenda's acceptance with Google Tag Manager, that means:
- it pushes the
iubenda_consent_given
event to the Google Tag Manager (GTM) data layer - it pushes the
iubenda_consent_given
event to the GTM data layer when the user navigates to the
different routes - it allows you to customize both the GTM event pushed and the GTM data layer name
What this plugin does not
How to use
Basic usage
plugins: [
{
resolve: 'gatsby-plugin-iubenda-cookie-footer',
options: {
iubendaOptions: {"lang":"en","siteId":XXXXX,"cookiePolicyId":YYYYY, },
}
}
]
You can copy/paste the iubendaOptions
from the Iubenda embed script:
Usage with Google Tag Manager
plugins: [
{
resolve: 'gatsby-plugin-iubenda-cookie-footer',
options: {
iubendaOptions: {"lang":"en","siteId":XXXXX,"cookiePolicyId":YYYYY, },
googleTagManagerOptions: true
}
]
The user acceptance is pushed to the GTM data layers as explained by the official Iubenda guide.
Usage with Google Tag Manager and custom event/dataLayer name
plugins: [
{
resolve: 'gatsby-plugin-iubenda-cookie-footer',
options: {
iubendaOptions: {"lang":"en","siteId":XXXXX,"cookiePolicyId":YYYYY, },
googleTagManagerOptions: {
eventName: "custom_iubenda_event_name",
dataLayerName: "customDataLayerName"
}
}
]
Contributing
PR or issues are welcome 👋
Notes
- if you want to work on the plugin sources, remember that you need to
npm run build
on the root
then, in every test project, you need to run npm run plugin:link
to locally use it - a nicer testing solution could be to leverage the Travis jobs/envs instead of running them synchronously
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!