实际上有几种方法可以做到这一点,您选择哪个选项在很大程度上取决于对您来说最简单的方法以及您计划如何分析数据。
如果您想使用 Optimizely 的分析仪表板:
我建议创建一个实验,该实验将在不同时间激活一堆其他实验。激活实验将针对每个人,并在他们到达您的向导时立即运行。其他实验将设置手动激活并由该实验触发。
激活实验的代码如下:
window.optimizely = window.optimizely || [];
function hashChanged() {
if(location.hash === 'publishing-step') {
window.optimizely.push(['activate', 0000000000]);
}
if(location.hash === 'checkout-step') {
window.optimizely.push(['activate', 1111111111]);
}
}
window.addEventListener('hashchange', hashChanged, false);
或者你可以调用 window.optimizely.push(['activate', xxxxxxxxx]); 直接从您网站的代码中获取,而不是创建激活实验并监听 hashchange。
如果您想使用 Google Analytics 等第三方分析工具:
您可以使用与上述类似的代码在一个实验中完成所有这些操作,但在每个“if”部分而不是激活实验,您可以运行变体代码,对向导进行更改并将特殊跟踪信息发送到您的分析,以便以后使用报告。您必须为此方法进行自己的统计显着性计算(因为 Optimizely 的数据不会“干净”),但如果配置正确,这种方法通常效果更好。
或者,您可以使用上面概述的方法,但仍然尝试通过在实验上创建自定义事件并使用以下调用向他们发送数据来使用 Optimizely 分析仪表板window.optimizely.push(["trackEvent", "eventName"]);
这篇文章也可能对您有所帮助。