Javascript 读取Cookie变量
那里有大量的javascript信息,但我似乎不能把它们全部放在一起。通过谷歌标签管理器,我创建了一个创建Cookie的脚本。然后我使用第1方变量来获取该值。这看起来很有效。在开发人员工具箱中的cookies中,我可以看到名为“LandingPage”且值为“/XYZ/”的cookie。还有其他几个cookie值,但我主要关注这一个。我搞不懂的是如何读取/显示特定的“LandingPage”值 为了便于学习,我只是尝试创建一个函数,比如一个警报,来显示“LandingPage”的值,即“/XYZ/”。我只是无法显示LandingPage的值 下面是我用来设置/创建cookie的代码Javascript 读取Cookie变量,javascript,session-cookies,google-tag-manager,setcookie,Javascript,Session Cookies,Google Tag Manager,Setcookie,那里有大量的javascript信息,但我似乎不能把它们全部放在一起。通过谷歌标签管理器,我创建了一个创建Cookie的脚本。然后我使用第1方变量来获取该值。这看起来很有效。在开发人员工具箱中的cookies中,我可以看到名为“LandingPage”且值为“/XYZ/”的cookie。还有其他几个cookie值,但我主要关注这一个。我搞不懂的是如何读取/显示特定的“LandingPage”值 为了便于学习,我只是尝试创建一个函数,比如一个警报,来显示“LandingPage”的值,即“/XYZ
<script>
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
createCookie("LandingPage","{{Page Path}}")
</script>
函数createCookie(名称、值、天数){
如果(天){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
else var expires=“”;
document.cookie=name+“=”+value+expires+“path=/”;
}
createCookie(“LandingPage”,“{{Page Path}}”)
在谷歌标签管理器(GTM)中,您可以使用GTM的内置变量“第一方Cookie”轻松访问第一方Cookie。您需要提供一个有价值的名称供参考,例如“登录页Cookie值”,还需要提供Cookie的名称,在您的案例中为登录页。您可以在任何内置标记、其他变量甚至自定义HTML(脚本)代码中引用此变量:{{Landing Page Cookie Value}},基于本文中的示例名称。变量应该包含cookie的值
编辑,详细解释
这正是代码,从原始帖子中复制而来。我正在创建一个新的自定义HTML标记,它在页面加载期间在所有页面上运行。
这是我创建变量的设置,引用相同的cookie名称
我还创建了一个非常简单的自定义HTML标记,它可以在任何单击事件上运行。因此,只要单击页面上的任意位置,它就会触发代码运行。它尝试在控制台中显示最近创建的Cookie变量的内容。
通过打开我的测试页面,在打开GTM预览模式后,我可以看到我的第一个标签在pageview上运行。
执行单击时,我会在控制台中获得最初存储的值:
在谷歌标签管理器(GTM)中,您可以使用GTM的内置变量“第一方Cookie”轻松访问第一方Cookie。您需要提供一个有价值的名称供参考,例如“登录页Cookie值”,还需要提供Cookie的名称,在您的案例中为登录页。您可以在任何内置标记、其他变量甚至自定义HTML(脚本)代码中引用此变量:{{Landing Page Cookie Value}},基于本文中的示例名称。变量应该包含cookie的值
编辑,详细解释
这正是代码,从原始帖子中复制而来。我正在创建一个新的自定义HTML标记,它在页面加载期间在所有页面上运行。
这是我创建变量的设置,引用相同的cookie名称
我还创建了一个非常简单的自定义HTML标记,它可以在任何单击事件上运行。因此,只要单击页面上的任意位置,它就会触发代码运行。它尝试在控制台中显示最近创建的Cookie变量的内容。
通过打开我的测试页面,在打开GTM预览模式后,我可以看到我的第一个标签在pageview上运行。
执行单击时,我会在控制台中获得最初存储的值:
我是否很清楚,您使用GTM设置cookie,并且您还希望在GTM中检索同一cookie的值?最终目标是不仅将此变量传递到Google Analytics,还将此变量传递到表单提交@kgrg Yes-这类似于“按名称获取cookie”,但我无法让那个特定的代码正常工作代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+name+“=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我试图编辑邮件,但无法编辑。下面是我尝试在开发者控制台中运行的内容。我认为它应该和变量一起返回。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+LandingPage+”=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我最初只是想找到一种方法来确认我有代码来提取正确的变量。这就是为什么我想在类似于警报框的地方显示变量。一旦我知道我可以“读取”变量,我会将变量传递到Google Analytics和表单提交中。我很清楚,您使用GTM设置cookie,这可能是重复的,您还想在GTM中检索同一个cookie的值?最终目标是不仅将此变量传递到Google Analytics,还将此变量传递到表单提交@kgrg Yes-这类似于“按名称获取cookie”,但我无法让特定代码正常工作。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+name+“=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我试图编辑邮件,但无法编辑。下面是我尝试在开发者控制台中运行的内容。我认为它应该和变量一起返回。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+LandingPage+”=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我最初只是想找到一种方法来确认我有代码来提取正确的变量。这就是我想展示va的原因