A/B-тестирование через гугл аналитикс
С какой стороны выводить форму (правая или внизу)?
- abtest.php
class ABTest { const COOKIE_MAIL_POS = 'mail_position'; static $mailPositions = array('bottom', 'right'); static function getMailPos() { if (in_array($_COOKIE[self::COOKIE_MAIL_POS], self::$mailPositions)) return $_COOKIE[self::COOKIE_MAIL_POS]; return self::setRandomMailPos(); } static function setRandomMailPos() { $randPos = self::$mailPositions[rand(0, count(self::$mailPositions) - 1)]; setcookie(self::COOKIE_MAIL_POS, $randPos, time()+31104000); return $randPos; } static function mailPositionIsRight() { return self::getMailPos() == 'right'; } }
Шаблон:
- template.php
<?php if (ABTest::mailPositionIsRight()) { ?> <script language="javascript" type="text/javascript"> _gaq.push(['_setCustomVar', 1, 'form', 'right_form', 1]); </script> <?php } else { ?> <script language="javascript" type="text/javascript"> _gaq.push(['_setCustomVar', 1, 'form', 'bottom_form', 1]); </script> <?php } ?>