google-tag-manager - 如何从站点代码中提取 gtm 变量
问题描述
我希望将某些变量从购物篮页面上的以下代码中提取到 GTM。我需要帮助了解什么类型的 javascript 代码可以完成此操作。
<div id="productDetailsJSON_15410178" class="hidden">
{
'id': '85567',
'name': 'awareness underwire bra',
'category': 'not set',
'list': 'not set',
'position': 'not set',
'brand': 'wacoal',
'price': '65.00',
'quantity': '1',
'variant': 'midnight blue',
'dimension1': '85567.488.36C',
'dimension2': '36c',
'dimension7': '',
'dimension8': '36',
'dimension9': 'c'
}
</div>
解决方案
您可以设置一个DOM 类型 GTM 变量,将选择器设置为#productDetailsJSON_15410178
. 这将返回匹配元素的 innerText。
如果您想提取单个值,则必须在自定义 Javascript 变量中使用它并将变量内容解析为 JSON。这会有点问题,因为该变量的内容实际上不是 JSON 字符串(JSON 需要双引号),所以你不能只做一个 JSON.parse - 你需要事先用双引号替换单引号. 这有点乱,所以如果你能事先修复你的字符串会更容易。
推荐阅读
- python - 如何在sqlalchemy中的值更改后触发事件
- postgresql - 无法连接到 postgres docker 容器(本地主机)
- javascript - 如何将消息转换为 utf-8
- python - ImportError:无法从部分初始化的模块“电报”导入名称“机器人”
- flutter - 如何使用 Flutter 单击按钮转到新页面
- javascript - React 渲染时间太长——我应该选择哪种架构?
- c++ - 在 NMRU 的实现中我做错了什么?
- wpf - WPF - Open Message Box while another Message Box is open
- c# - 如果多列结果,如何使用 SqlCommand.ExecuteReader 重构包含循环?
- asp.net - 如何从外部世界访问我在 Windows Azure VM 上的 ASP.NET Web API?