我的网站是一个单页面的webapp。
我正在使用实验ID加载实验代码:

<script src="//www.google-analytics.com/cx/api.js?experiment={@ js_settings.analytics.experimentid @}"></script>


加载完成后,在显示页面的那一刻,我通过调用执行以下操作的函数来选择正确的模板:

ga('set', 'expId', experiment_id);
var variation = cxApi.getChosenVariation(experiment_id) || cxApi.chooseVariation();
cxApi.setChosenVariation(variation, experiment_id);
ga('set', 'expVar', variation);
ga('set', 'dimension1', variation);
ga('send', 'pageview');


现在,似乎cxApi.chooseVariation()始终返回0。到目前为止,205个会话中的100%被赋予默认变化(0)。为什么?

最佳答案

问题似乎是即使您手动使用cxApi,也必须在页面上显示实验javascript代码。您必须修改代码,使其不会重定向用户,然后可以调用chooseVariation(),它将返回实际的变化,而不是始终为0。

当然应该改进此API,因为在目前状态下,它充其量只是中等水平。

10-06 11:40