Adobe DTM 将 Unix 时间戳传递给 eVar
Adobe DTM Pass Unix Timestamp to eVar
我想将 Unix 时间戳传递给 DTM 中的命中级别 eVar。我假设我可以像这样传递一些 Javascript:
function() {
var now = new Date();
return now.getTime();
}
但是,我不确定在 DTM 中将它传递到哪里。这会在工具设置或其他地方的 "Customize Page Code" 编辑器中传递吗?
您可以创建类型为自定义代码的数据元素。将其命名为 current_timestamp
之类的名称。代码不应包含在函数声明语法中(DTM 已在内部将其包含在函数回调中)。所以只需在代码框中输入以下内容:
var now = new Date();
return now.getTime();
然后在您的 Adobe Analytics Tool Config(用于全局变量)中,或在 Page Load、Event 中基于,或直接调用规则,在 Adobe Analytics Config 部分中。选择要设置的 eVar
,并为值输入 %current_timestamp%
(或任何您命名的名称,在 start/end 处使用 %
。您应该会看到它显示当您开始在值字段中键入 %
时,在下拉列表中向上)。
或者,如果您想在这些位置之一的自定义代码框中分配 eVar
,您可以使用以下 javascript 语法,例如(假设示例中的 eVar1
).
s.eVar1 = _satellite.getVar('current_timestamp');
请注意,使用此语法,您 而不是 用 %
包裹数据元素名称
最后一点。这是客户端代码,因此时间戳将基于用户浏览器的时区设置。因此,例如,一位来自美国的访问者和另一位来自中国的访问者同时物理访问一个页面(服务器同时请求),将显示两个不同的时间戳,因为他们处于两个不同的时区。
这会在报告中产生一些误导性数据,因此请确保按其他基于地理的维度对其进行分解,或者在 数据元素 中进行一些额外的计算以转换时间戳到单个时区(例如将其转换为 EST)。实际上,大多数人会选择他们办公室所在的任何时区,或者他们的服务器设置的时区。
我想将 Unix 时间戳传递给 DTM 中的命中级别 eVar。我假设我可以像这样传递一些 Javascript:
function() {
var now = new Date();
return now.getTime();
}
但是,我不确定在 DTM 中将它传递到哪里。这会在工具设置或其他地方的 "Customize Page Code" 编辑器中传递吗?
您可以创建类型为自定义代码的数据元素。将其命名为 current_timestamp
之类的名称。代码不应包含在函数声明语法中(DTM 已在内部将其包含在函数回调中)。所以只需在代码框中输入以下内容:
var now = new Date();
return now.getTime();
然后在您的 Adobe Analytics Tool Config(用于全局变量)中,或在 Page Load、Event 中基于,或直接调用规则,在 Adobe Analytics Config 部分中。选择要设置的 eVar
,并为值输入 %current_timestamp%
(或任何您命名的名称,在 start/end 处使用 %
。您应该会看到它显示当您开始在值字段中键入 %
时,在下拉列表中向上)。
或者,如果您想在这些位置之一的自定义代码框中分配 eVar
,您可以使用以下 javascript 语法,例如(假设示例中的 eVar1
).
s.eVar1 = _satellite.getVar('current_timestamp');
请注意,使用此语法,您 而不是 用 %
最后一点。这是客户端代码,因此时间戳将基于用户浏览器的时区设置。因此,例如,一位来自美国的访问者和另一位来自中国的访问者同时物理访问一个页面(服务器同时请求),将显示两个不同的时间戳,因为他们处于两个不同的时区。
这会在报告中产生一些误导性数据,因此请确保按其他基于地理的维度对其进行分解,或者在 数据元素 中进行一些额外的计算以转换时间戳到单个时区(例如将其转换为 EST)。实际上,大多数人会选择他们办公室所在的任何时区,或者他们的服务器设置的时区。