【发布时间】:2020-11-19 12:10:09
【问题描述】:
我们有一个包含多种布局的页面。这些布局之间的差异以及它们的生成方式非常重要,以至于它们需要在服务器端使用 PHP 来完成。
为了对这些布局进行 A/B 测试,我们通过 Google Optimize 创建了一个页面重定向实验,该实验将在 URL https://website.test/page?layout_id=123 中添加一个自定义变量。这很好用,但问题是页面加载和 DOM 准备就绪之间的延迟,迫使客户端在重定向之前查看原始布局。
然后我们决定将重定向移动到 PHP 中的服务器端脚本。
一种方法是使用https://github.com/theiconic/php-ga-measurement-protocol/(基于Google 的Measurement Protocol),根据https://developers.google.com/optimize/devguides/experiments#implement-experiment,我们需要自行决定提供哪个变体,但是,它仍然需要clientId 或@987654325 @ 来识别客户端,这仅在第一次加载后通过名为 _ga 的 cookie 传递。
这种方法的问题是无法识别第一次访问该页面的用户,因此会弄乱结果。
对于这种情况,服务器需要提前知道要交付什么布局的最佳方法是什么?
【问题讨论】:
-
如果找不到
_gacookie,您能否刷新页面?所以第二次它会显示cookie。 -
@jagad89 这将导致与让 Google Optimize 执行刷新相同的行为。唯一的另一种选择是将 A/B 测试留给服务器进行,因此即使没有客户端 ID,我们也会决定一个变体并显示该布局,将决定保存在会话中,每当找到
_gacookie 时,我们会通知 Google Analytics。但是没有更好的方法吗?大公司是做什么的?
标签: php optimization analytics measurement-protocol