一直在尝试让它工作几个星期。任何帮助是极大的赞赏。
我最近升级到Universal Analytics,并成功地通过autoLinker
设置了跨域跟踪,但是在将用户重定向到实验的域部分时,我无法让Analytics(分析)实验传递_ga
变量。
建立
两个域都有两个跟踪器,一个跟踪器(t0
)共享[UA-xxxxxxx-5]
,另一个跟踪器(domainUniqueTracker
)登录到该特定域唯一的trackingId(主域为[UA-xxxxxxx-1]
,新实验域为[UA-xxxxxxx-14]
)。
链接器加载在t0
上以启用跨域共享。
链接器加载了一系列域,包括我尝试通过实验向其发送流量的域。
实验是在共享的TrackingId [UA-xxxxxxx-5]
上创建的。
语境
我公司有一个叫做LIME Pro的产品,到目前为止,我们公司的网页上都提供有关该产品的信息。现在,作为一项实验,我们在单独的域上创建了有关系统的一页页面,他们希望看到哪个页面(旧页面或新页面)吸引了最多的潜在客户。
公司网页中的旧产品页(在其中安装了实验代码)
http://www.lundalogik.se/crm-system/lime-pro/
单独域上的新产品页面(在跟踪器t0
上与主要域共享trackingId)
http://www.lime-pro.se
问题
如果我访问www.lundalogik.se并从那里单击指向新的外部站点的常规链接(伪页面lundalogik.se/experiment/
上的常规锚链接),则clientId
将成功传递到URL和跟踪器中外部站点识别出此情况并开始使用clientId
。
但是,如果我浏览到安装了实验代码的页面,则会重定向到外部站点,而不会传递clientId,因此外部站点上的跟踪器会生成一个新的clientId。
感谢和抱歉,我的帖子很长,想尽我所能解释。
最佳答案
UA中的各种链接器功能将_ga添加到传出链接(表单,框架等)中。由于重定向是在实验javascript中进行的,因此无法将客户端ID添加到url(从某种程度上来说,这似乎是对Google的监督-他们似乎没有预料到您的用例,即跨域的内容实验)。
我有一些未经测试的想法可以提供帮助,也许您可以在其中一个之上建立解决方案。
1)在触发实验代码之前,将客户端ID推送至window.document.location.hash。至少在Chrome中,这不会导致重新加载(据我从“网络”标签中看到的信息)。由于哈希现在是网址的一部分,因此应在重定向触发时将其发送出去。然后,在接收页面上需要一个脚本,该脚本检查哈希以获取clientID并将其传递给Analytics(分析)(如果存在)。
2)基本相同,只是这次使用pushState方法(https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history),它应该允许您提供查询参数而无需重新加载。
3)将变体页面设为您主域内的页面。代替任何内容的地方,放一个Javascscript来从cookie中读取clientId并重定向到另一个域。
4)与3相同,仅在服务器端(不要忘了在重定向中包含内容实验参数)
正如我已经说过的那样,这基本上是在大声思考,但可能会为解决方案提供线索。
关于google-analytics - 使用通用Analytics(分析)跨网域执行GA实验,连结器可以运作,但实验程式码会忽略clientId,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23886676/