【问题标题】:Reading Cookie Variable读取 Cookie 变量
【发布时间】:2019-07-20 10:58:19
【问题描述】:

那里有大量的 javascript 信息,但我似乎无法将它们放在一起。通过谷歌标签管理器,我创建了一个脚本来创建一个 Cookie。然后我使用第一方变量来捕获该值。这看起来很有效。在开发人员工具箱的 cookie 中,我可以看到名称为“LandingPage”且值为“/XYZ/”的 cookie。还有其他几个 cookie 值,但我专注于这个特定的值。我不知道如何读取/显示特定的“LandingPage”值。

为了简单起见,我只是尝试创建一个函数,例如警报,以显示“LandingPage”的值,即“/XYZ/”。我只是无法让 LandingPage 值显示。

下面是我用来设置/创建 cookie 的代码。

<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>

【问题讨论】:

  • Get cookie by name的可能重复
  • 我明白吗,您使用 GTM 设置 cookie,并且您还想在 GTM 中检索同一 cookie 的值?
  • 最终目标是不仅将此变量传递给 Google Analytics,而且还将变量传递给表单提交 @kgrg 是的 - 这类似于“按名称获取 Cookie”,但是我无法让那个特定的代码工作。
  • 我试图编辑我的消息但不能。以下是我尝试在开发者控制台中运行的内容。我认为它应该与变量一起返回。
  • 我最初只是在寻找一种方法来确认我有代码来提取正确的变量。这就是为什么我想在警报框之类的东西中显示变量。一旦我知道我可以“读取”该变量,我就会着手获取该变量并将其传递给 Google Analytics 和表单提交。

标签: javascript session-cookies google-tag-manager setcookie


【解决方案1】:

在 Google 跟踪代码管理器 (GTM) 中,您可以使用 GTM 的内置变量“第一方 Cookie”轻松访问第一方 Cookie。您需要提供一个有价值的名称以供参考,例如“Landing Page Cookie Value”,并提供 cookie 的名称,在您的情况下为 LandingPage。您可以在任何内置标签、其他变量甚至自定义 HTML(脚本)代码中引用此变量:{{Landing Page Cookie Value}} 基于本文中的示例名称。该变量应包含您的 cookie 的值。

编辑,详解

这正是从原始帖子复制的代码。我正在创建一个新的自定义 HTML 标记,该标记在页面加载期间在所有页面上运行。

这是我创建变量的设置,引用相同的 cookie 名称。

我还创建了一个非常简单的自定义 HTML 标记,它在任何点击事件上运行。因此,只需单击页面上的任意位置,它就会触发代码运行。它尝试在控制台中显示最近创建的 Cookie 变量的内容。

通过打开我的测试页面,在打开 GTM 预览模式后,我可以看到我的第一个代码在综合浏览量上运行。

执行点击,我得到了控制台中原来存储的值:

【讨论】:

  • 这就是我卡住的地方。这可能是我正在尝试做的事情或不了解可以做什么。我尝试了几种不同的代码,但无法让变量显示在警报函数之类的东西中。你有我可以试试的示例代码吗?
  • 感谢您的更新。请根据您编写 cookie 的原始代码查看我编辑的答案以及详细步骤、我如何获取值。
  • 很好的解释,感谢您花时间为我个性化它!这正是我所需要的。我能够在开发人员控制台中看到登录页面的值。我将其标记为最佳答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 2012-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-13
相关资源
最近更新 更多