Javascript 谷歌标签管理器虚拟页面视图
我在设置virtualPageView时遇到了一个小问题,它应该覆盖在没有结果时发送给google的URL 以下是我的JavaScript代码:Javascript 谷歌标签管理器虚拟页面视图,javascript,google-analytics,google-tag-manager,google-datalayer,Javascript,Google Analytics,Google Tag Manager,Google Datalayer,我在设置virtualPageView时遇到了一个小问题,它应该覆盖在没有结果时发送给google的URL 以下是我的JavaScript代码: function returnNoSearchResultsGoogleTagManagerCode($searchterm){ if ($searchterm == "") return ""; $requestUri = $_SERVER['REQUEST_URI'] . "&no_result=".$searchterm
function returnNoSearchResultsGoogleTagManagerCode($searchterm){
if ($searchterm == "") return "";
$requestUri = $_SERVER['REQUEST_URI'] . "&no_result=".$searchterm;
$js = "<script>
$(document).ready(function(){
dataLayer.push({
'event':'empty_result',
'virtualPageURL':'".$requestUri."'
});
});
</script>";
return $js;
}
如果搜索引擎找不到结果,则设置该类。到现在为止,一直都还不错。
我还创建了一个数据层变量来保存virtualPageURL
现在我需要一个在变量为true时触发的事件
最后,我创建了一个PageView类型的标记,该标记在事件发生时触发:
到目前为止,似乎一切正常,标签配置正确(我猜),但如果我进行搜索没有结果,页面URL不会被覆盖
标记被正确激发,变量被填充。数据层概述显示了正确的数据层事件。
但是页面URL没有被覆盖。。。即使我等了一整天,这个分类也不会发送给谷歌
我做错了什么?
如果有人能想出一个主意甚至一个解决办法,我会非常感激:)
提前谢谢
字节
更新:
嘿,我忘了提到,我想用newpage变量作为字符串,google应该用它来确定searchterm和searchcategory
在Google Analytics中,我将搜索配置为“q”参数,将“no_result”配置为类别。
甚至有可能更改google最终解析的字符串吗?对于虚拟页面视图,您必须更改字段“page”-在您的GTM OnSearchEmptyResult中,您正在更改“{page URL}”-我认为这不是发送虚拟页面视图的正确方式。此外,如果需要更改主机名,请使用Fieldname“hostname” 在预览模式下,您将不会在变量选项卡中看到页面URL的更改,您必须转到触发的实际GA标记并检查其值。您可以在GTM的预览工具中执行此操作,也可以使用标准开发人员工具-网络选项卡,查看发送给GA的值:
您可以看到“dl”参数是当前页面,如果您设置了虚拟页面,您还应该看到名为“dp”的参数,这将是GA中页面的新值。对于虚拟页面视图,您必须更改字段“page”-在GTM OnSearchEmptyResult中,您正在更改“{page URL}”-我认为这不是发送虚拟页面视图的正确方式。此外,如果需要更改主机名,请使用Fieldname“hostname” 在预览模式下,您将不会在变量选项卡中看到页面URL的更改,您必须转到触发的实际GA标记并检查其值。您可以在GTM的预览工具中执行此操作,也可以使用标准开发人员工具-网络选项卡,查看发送给GA的值:
您可以看到“dl”参数是当前页面,如果您设置虚拟页面,您还应该看到名为“dp”的参数,这将是GA中页面的新值。要将虚拟页面视图发送到Google Analytics,您需要更改的字段是页面而不是{page Url},还经常使用标题字段 这是发送一个简单的虚拟页面视图所需要做的两件事
额外:我总是以/virtual/开始我的页面路径,以便能够在GA中轻松识别哪些是虚拟页面视图要将虚拟页面视图发送到Google Analytics,您需要更改的字段是页面而不是{page Url},并且经常使用标题字段 这是发送一个简单的虚拟页面视图所需要做的两件事
额外:我总是以/virtual/开始我的页面路径,以便能够在GA中轻松识别哪些是虚拟页面视图如果您想设置虚拟页面视图,则必须使用页面而不是{{{page URL}}在您的字段名中,对于文档标题,请在字段名中使用标题。 有关谷歌分析的更多领域参考,请点击以下链接
.如果您想设置虚拟页面视图,您必须在字段名中使用页面而不是{{page URL}},并且对于文档标题在字段名中使用标题。 有关谷歌分析的更多领域参考,请点击以下链接
.谢谢你的帮助。我想我已经解决了这个问题,现在已经解决了。我将在下面描述我的解决方案: 解决办法很简单
缺点:搜索词也列在正常列表中。但我认为这是微不足道的谢谢你的帮助。我想我已经解决了这个问题,现在已经解决了。我将在下面描述我的解决方案: 解决办法很简单
function(){
if (document.getElementsByClassName('ga-no-result').length > 0){
return true;
}else{
return false
}
}
if (typeof ga === "function") {
ga.getAll().forEach((tracker) => {
tracker.set('page', '/my/path'); // <- change here
tracker.send('pageview');
});
}