Помещение gtag в сценарий согласия cookie

Я пытаюсь внедрить диалог согласия на использование файлов cookie, который (в самом себе) устанавливает файл cookie, запрашивая у пользователя "отклонить" или "разрешить" файлы cookie с помощью сценария со https://cookieconsent.insites.com/download/.

Мой сайт использует Google Analytics.

Кажется, не имеет значения, где я размещаю код Google.

В его нынешнем виде "ga", "_gat_gtag_UA...", "gid" и "cookieconsent_status" создаются при нажатии "отклонить" или "разрешить". но в инструментах разработчика Mozilla также сообщается об ошибке "недоступный код".

Я сделал это, потому что Google говорит, что "ga_disable" должен прийти перед любыми вызовами gtag (). ( https://developers.google.com/analytics/devguides/collection/gtagjs/user-opt-out}

Когда 2 сценария Google размещаются один за другим (либо до, либо после сценария согласия на использование файлов cookie), ошибка кода исчезает, записываются 3 вышеуказанных файла "ga" и все файлы cookie google.com записываются независимо от того, "отклонены" или нет. "или" принять "нажата.

Цель состоит в том, чтобы предотвратить любые cookie-файлы при "отклонении" и записать все cookie-файлы при "разрешении", с возможностью изменения пользователем своего мнения в соответствии со сценарием согласия на использование cookie-файлов.

Любое руководство будет оценено.

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type"
          content="text/html; charset=UTF-8" />
    <meta http-equiv="X-UA-Compatible"
          content="IE=edge,chrome=1" />

    <title>Example</title>
    <meta name="description"
          content="My description" />
    <meta name="viewport"
          content="width=device-width, initial-scale=1" />
    <meta name="language"
          content="en-us" />
    <meta name="robots"
          content="INDEX,FOLLOW" />
</head>

<body>
    <p>Hello World!</p>


<?php //  Permission to deline or allow cookies -- https://cookieconsent.insites.com/download/# ?>  

<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" />
<script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script>

<script>
window.addEventListener("load", function(){
window.cookieconsent.initialise({
onInitialise: function (status) {
  var type = this.options.type;
  var didConsent = this.hasConsented();
  if (type == 'opt-in' && didConsent) {
    // enable cookies
        window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-119555859-1');
  }

 if (type == 'opt-out' && !didConsent) {
    // disable cookies
        window['ga-disable-UA-119555859-1'] = true;    
  }
},

onStatusChange: function(status, chosenBefore) {
  var type = this.options.type;
  var didConsent = this.hasConsented();
  if (type == 'opt-in' && didConsent) {
    // enable cookies
        window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-119555859-1');
  }
  if (type == 'opt-out' && !didConsent) {
    // disable cookies
    window['ga-disable-UA-119555859-1'] = true;    
  }
},

onRevokeChoice: function() {
  var type = this.options.type;
  if (type == 'opt-in') {
    // disable cookies
        window['ga-disable-UA-119555859-1'] = true;    
  }
  if (type == 'opt-out') {
    // enable cookies
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-119555859-1');

}
},  "palette": {
    "popup": {
    "background": "#237afc"
    },
    "button": {
      "background": "#fff",
      "text": "#237afc"
    }
  },
  "theme": "classic",
  "position": "bottom-right",
  "type": "opt-in",
  "content": {
   "dismiss": "Decline Cookies",
   "link": "Learn more.",
    "href": "https://cookiesandyou.com/"
  }
 })});
</script>


<?php // Global site tag (gtag.js)  Second gtag script installed above in 'enable cookies' ?>

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-119555859-1"></script>


</body>

0 ответов

Другие вопросы по тегам