Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal 如何从谷歌分析模块检查用户是否在欧盟cookie合规模块上授予cookie权限_Drupal - Fatal编程技术网

Drupal 如何从谷歌分析模块检查用户是否在欧盟cookie合规模块上授予cookie权限

Drupal 如何从谷歌分析模块检查用户是否在欧盟cookie合规模块上授予cookie权限,drupal,Drupal,因此,我有谷歌分析模块和欧盟cookie合规模块,两者都运行良好。现在我正试图禁用谷歌分析,若用户并没有在欧盟cokie合规性上授予cookie许可。我知道cookie模块有javascript函数 Drupal.eu_cookie_compliance.hasAgreed() 但我必须从google analytics中的php代码中检查这一点。所以当页面首次加载时,谷歌分析将被禁用 有什么办法让它工作吗 <?php $cookie=$_COOKIE['cookie-agreed-s

因此,我有谷歌分析模块和欧盟cookie合规模块,两者都运行良好。现在我正试图禁用谷歌分析,若用户并没有在欧盟cokie合规性上授予cookie许可。我知道cookie模块有javascript函数

Drupal.eu_cookie_compliance.hasAgreed()
但我必须从google analytics中的php代码中检查这一点。所以当页面首次加载时,谷歌分析将被禁用

有什么办法让它工作吗

<?php 
$cookie=$_COOKIE['cookie-agreed-sl'];
if($cookie==1 || $cookie==2)return true;
else return false;

?>


所以我在google analytics代码中添加了该代码,但它总是返回ss false,所以google analytics cookie是较新的设置。我在一些php文件中尝试了这段代码,它在那里工作了。如何修复它?

可以在javascript文件中找到eu\u cookie\u符合性逻辑:包含
eu\u cookie\u符合性\u获取\u设置

Drupal.eu_cookie_compliance.setStatus = function(status) {
    var date = new Date();
    date.setDate(date.getDate() + 100);
    document.cookie = "cookie-agreed-"+Drupal.settings.eu_cookie_compliance.popup_language + "="+status+";expires=" + date.toUTCString() + ";path=" + Drupal.settings.basePath;
}

因此,您必须使用php获取此cookie。

您检查了设置了哪些cookie吗?哇,我发现此代码每页只调用一次。所以我需要转到另一个页面来激活谷歌分析。而且Attachat cookie工具没有找到它,所以现在我试着打印出所有的cookie,我可以看到还有分析。谢谢!