Skip to content

helpfulrobot/heyday-silverstripe-abtesting

 
 

Repository files navigation

SilverStripe ABTesting

Installation (with composer)

$ composer require heyday/silverstripe-abtesting:0.2.0

For 2.4 see the tag 0.1.7

Usage

Add the following to your root level Page SilverStripe template

<% if ABTestScript %>
	$ABTestScript
<% else %>
	<% if SiteConfig.ABTestGlobalScript %>
		$SiteConfig.ABTestGlobalScript
	<% end_if %>
<% end_if %>

Decorate the object/page you wish to test with the ABTestingExtension

class Page_Controller extends ContentController
{
    public static $extensions = array(
        "ABTestingExtension('a','b')"
    );
}

Set up the variations for the test

For SilverStripe 2.4

<% if getABTesting(st_b) %>
// State for b
<% else %>
// State for default
<% end_if %>

For SilverStripe 3

<% if getABTesting(st,b) %>
// State for b
<% else %>
// State for default
<% end_if %>

Where st is a GET variable like /?st=b

Unit testing

$ composer install --dev
$ vendor/bin/phpunit

About

Google Analytics A/B Testing in SilverStripe

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%