templates/inc/page_head_end.html.twig line 1

Open in your IDE?
  1. {% if page.config is defined %}
  2.   {% if page.config.gtm.enabled %}
  3.     {% if page.site.config.didomi.enabled %}
  4.       {{ include('inc/didomi_script.html.twig') }}
  5.     {% elseif page.site.config.cookieBot.enabled %}
  6.       <!-- Google Consent Mode -->
  7.       <script data-cookieconsent="ignore">
  8.         window.dataLayer = window.dataLayer || [];
  9.         function gtag() {
  10.           dataLayer.push(arguments);
  11.         }
  12.         gtag("consent", "default", {
  13.           ad_storage: "denied",
  14.           analytics_storage: "denied",
  15.           functionality_storage: "denied",
  16.           personalization_storage: "denied",
  17.           security_storage: "granted",
  18.           wait_for_update: 500,
  19.         });
  20.         gtag("set", "ads_data_redaction", true);
  21.       </script>
  22.       <!-- End Google Consent Mode -->
  23.     {% endif %}
  24.     <!-- Google Tag Manager -->
  25.     <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  26.     new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  27.     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  28.     'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  29.     })(window,document,'script','dataLayer', '{{ page.config.gtm.containerId }}');</script>
  30.     <!-- End Google Tag Manager -->
  31.     {# Bloc déplacé après GTM #}
  32.     {# Correction 1 : dataLayer.push() au lieu de dataLayer = [] pour ne pas écraser #}
  33.     {# Correction 2 : setTimeout pour laisser le Consent Mode passer en granted #}
  34.     {% if lead is defined and page.config.gtm.confirmDatalayer %}
  35.       <script>
  36.         window.addEventListener('load', function() {
  37.           setTimeout(function() {
  38.             window.dataLayer = window.dataLayer || [];
  39.             dataLayer.push({{ include(template_from_string(page.config.gtm.confirmDatalayer|json_encode)) }});
  40.           }, 2500);
  41.         });
  42.       </script>
  43.     {% elseif lead is not defined and page.config.gtm.landingDatalayer %}
  44.       <script>
  45.         window.dataLayer = window.dataLayer || [];
  46.         dataLayer.push({{ include(template_from_string(page.config.gtm.landingDatalayer|json_encode)) }});
  47.       </script>
  48.     {% endif %}
  49.     {% if page.site.config.cookieBot.enabled and not page.site.config.didomi.enabled %}
  50.       <script>
  51.         function CookiebotCallback_OnAccept() {
  52.           if (Cookiebot.changed)
  53.           {
  54.             document.location.reload();
  55.           }
  56.         }
  57.       </script>
  58.     {% endif %}
  59.   {% endif %}
  60.   {% if page.site.config.cookieBot.enabled and not page.site.config.didomi.enabled %}
  61.     <!-- Cookiebot -->
  62.     <script
  63.       id="Cookiebot"
  64.       src="https://consent.cookiebot.com/uc.js"
  65.       data-cbid="{{ page.site.config.cookieBot.cbid }}"
  66.       data-blockingmode="auto"
  67.       type="text/javascript"
  68.     ></script>
  69.     <!-- End Cookiebot -->
  70.   {% endif %}
  71. {% endif %}
  72. {{ include(template_from_string(page.site.organization.config.formPage.headEndCode)) }}
  73. {{ include(template_from_string(page.headEndCode)) }}