【问题标题】:async script src inside script tag, GDPR complilance google ads脚本标签内的异步脚本 src,符合 GDPR 的谷歌广告
【发布时间】:2019-10-18 06:22:11
【问题描述】:

我正在执行 GDPR cookie 合规性检查,并尝试仅在用户接受 cookie 时加载 Google 广告。

我只想在 cookie 不存在时加载谷歌广告脚本。 所以我想这样做:

    <script>
    if(cookieNo!="1"){
       <script async src="https://www.googletagmanager.com/gtag/js?id=AW-mycode"></script>
       window.dataLayer = window.dataLayer || [];
       function gtag(){dataLayer.push(arguments);}
       gtag('js', new Date());

       gtag('config', 'AW-mycode');
       }
     <script>

知道如何将脚本标签放在脚本标签中吗?

【问题讨论】:

  • 如果用户接受了cookie,你想要加载脚本吗?
  • 是的,没错,谢谢
  • 在我看来,这两段似乎完全相反?您能否修改文本以符合您的需要。
  • 不,我认为这是正确的。 if(cookieNo!="1"){ 表示如果用户没有点击安装 cookieNo 的拒绝。所以如果不存在运行代码。反正还没测试过
  • 另外,不管用户是否接受,大部分页面都在设置cookies。 GDPR 声明仅告诉用户设置了一些 cookie。

标签: javascript


【解决方案1】:

下面是一个 sn-p,您可以使用它向网页添加异步脚本。把它包裹在你的状态中,你就可以开始了。

const gScript = document.createElement('script');
gScript.src = "https://www.googletagmanager.com/gtag/js?id=AW-mycode";
gScript.type = 'text/javascript';
gScript.onload = () => {
   console.log('Script has been fully loaded');
  // initlaize anything you want that needs to be done after script has loaded
  // Below code in your case
   window.dataLayer = window.dataLayer || [];
   function gtag(){dataLayer.push(arguments);}
   gtag('js', new Date());
   gtag('config', 'AW-mycode');

};
gScript.async = true;
gScript.charset = 'utf-8';
document.getElementsByTagName('head')[0].appendChild(gScript);

希望这会有所帮助:)

【讨论】:

  • 我认为它会起作用,因为我可以看到 cookie 等。好的,但是对话不会出现在谷歌广告的转化中。不知道为什么。在该代码之后,此脚本用于转换: 有什么想法吗?
  • 这可能是您分析脚本的问题。因为上面的代码只是将脚本加载到文档中。我在我的一个项目中有它,它工作正常。只需交叉检查所有 gtag 事件是否都被正确触发,如果没有,您可能需要手动触发它们
  • 这方面不太好,我不能让它工作,但是下面的解决方案有效。感谢您的帮助
【解决方案2】:

试试这个:

<script>
    if(cookieNo!="1"){
      var googleAds = document.createElement('script');
      googleAds.src = "https://www.googletagmanager.com/gtag/js?id=AW-mycode";
      document.head.appendChild(googleAds);
      //Other code
}
</script>

【讨论】:

  • 这对我有用,非常感谢。首先我尝试了上面的解决方案,但是上面的解决方案对我不起作用。
  • @Helenp 乐于助人!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多