我正在使用Google跟踪代码管理器和Google Analytics,并注意到之前的开发人员有这样的调用
var google_tag_params = {
"visitorLoginState":"logged-out",
"visitorType":"visitor-logged-out",
"pageTitle":"BECOME, The Sports, Fashion & Fitness Blog from SSS",
"pagePostType":"frontpage",
"browserName":"Firefox",
"browserVersion":"43.0",
"browserEngineName":"Gecko",
"browserEngineVersion":"43.0"
};
dataLayer.push({
"visitorLoginState":"logged-out",
"visitorType":"visitor-logged-out",
"pageTitle":"",
"pagePostType":"frontpage",
"browserName":"Firefox",
"browserVersion":"43.0",
"browserEngineName":"Gecko",
"browserEngineVersion":"43.0"
"google_tag_params":window.google_tag_params
});
在dataLayer
对象中,他使用google_tag_params
并从此处的上一个对象中推送数据。但他正在动态重复所有先前相同的变量,例如visitorLoginState
和pageTitle
等。我是否需要这样做并重复它?
Google跟踪代码管理器文档对此并不清楚,只是声明它是受支持的代码,没有明确的示例。
答案 0 :(得分:0)
语法本身没有任何问题 - 在将对象推送到dataLayer之前填充对象可能比拥有嵌套结构更具可读性。
然而,google_tag_params中的数据似乎已关闭,因为传统上google_tag_params是您用于Adwords remarketing tags参数的名称。虽然这是一种约定而非技术必需性,但我宁愿期望gtm_tag_params中的pagetype,product id和total value的值。
您的可能是一些不寻常的用例,但前一个开发人员更有可能做错了。您必须检查变量在标记管理容器中的使用方式。