google_tag_params有什么重要意义 - 为什么我要编码两次?

时间:2016-02-09 05:42:47

标签: javascript google-analytics google-tag-manager

我正在使用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并从此处的上一个对象中推送数据。但他正在动态重复所有先前相同的变量,例如visitorLoginStatepageTitle等。我是否需要这样做并重复它?

Google跟踪代码管理器文档对此并不清楚,只是声明它是受支持的代码,没有明确的示例。

1 个答案:

答案 0 :(得分:0)

语法本身没有任何问题 - 在将对象推送到dataLayer之前填充对象可能比拥有嵌套结构更具可读性。

然而,google_tag_params中的数据似乎已关闭,因为传统上google_tag_params是您用于Adwords remarketing tags参数的名称。虽然这是一种约定而非技术必需性,但我宁愿期望gtm_tag_params中的pagetype,product id和total value的值。

您的可能是一些不寻常的用例,但前一个开发人员更有可能做错了。您必须检查变量在标记管理容器中的使用方式。