a-blog cms で A/B テストできる環境を考えてみる その1

7/13 に GA タグを消してしまって情報が取れてない残念なキャプチャ


a-blog cms には Cookie の値を利用してテーマを切り替えることができます。その機能を活用の1つとして、A/Bテストができる環境を作ってみる事を考えてみたいと思います。

タイトルに「その1」というのがついているのは、今回は A と B を設定するところまでで、どうやって結果を知るのがいいのかは次回に続く事になります。「その2」については、いろいろな方法があるような気がしますので、このエントリーに続く「その2」を提案をブログに書いてくれる人がいると嬉しいです。

Cookie の値を活用してルールを利用する

現在リリースしているバージョンに同梱されている「site2016」テーマの場合には特定のページにアクセスした際に Cookie を設定してトップページのスライダーの中身を変更するというデモになっています。

方法としては、特定のページにアクセスした際に Cookie を設定し、次にトップにアクセスした際にはルールが効いてスライダーの中身が変更になります。


標準のトップページ

家庭用製品に興味を持った人のためのトップページ

業務用製品に興味をもった人のためのトップページ


上記の画像をいろいろクリックして、トップページアクセスしてみると URL が同じでも状況に変化があることが確認できるのではないかと思います。


初めてアクセスした人に Cookie のルールを適用する方法

上記の場合は、あるページにアクセスしたとか、フォームでアクションを起こした後とか、今後のアクセスで情報が変わるようにするという事でしたが、今回は初めてのアクセスで CMS のプログラムが起動する前の段階で Cookie を設定したいという事になります。

標準の index.php を acms.php に変更し、上記のプログラムを index.php で用意します。

index.php

<?php

$cookieName = "ABTEST";
$day = 7;

if (!$_COOKIE[$cookieName]) {
	if (rand(0,1)) {
		setcookie($cookieName, "A", time() + 3600 * $day);
		$_COOKIE[$cookieName] = "A";
	} else {
		setcookie($cookieName, "B", time() + 3600 * $day);
		$_COOKIE[$cookieName] = "B";
	}
}

require("acms.php");

あとは、ルールに「A/Bテスト( A )のとき」という設定を追加します。a-blog cms はルールを作る事で、テーマやコンフィグを分けたり、サーバー側のキャッシュを分けることができます。Bのルールを作るのかは、運用次第で設定してください。



グローバル変数で Cookie の情報を出るように

なんらか切り替えができるようにしたら、次にグローバル変数で Cookie の情報を出るようにしたいと思います。

config.server.php

hook.php が活用できるような設定を ON にできるようにします。

define('HOOK_ENABLE', 1);

/php/ACMS/User/Hook.php

以下のように hook.php を変更する事で %{COOKIE_AB_TEST} に A とか B が出るようになるはずです。この部分で IFブロックやインクルードを調整して何らか情報を取得できるようなことを考えてみることになります。

public function extendsGlobalVars($globalVars)
{
	if ($_COOKIE['ABTEST'] ){
		$globalVars->set('COOKIE_AB_TEST', $_COOKIE['ABTEST'] );
	}
}

問題点を修正し 8/2 にアップデートしました。


コメント

山本一道

山本 一道

有限会社アップルップル

名古屋のホームページ制作会社「有限会社アップルップル」の代表をしています。弊社で開発しているCMS「a-blog cms」や、名古屋の「WCAN」という名古屋のWeb制作者のためのセミナーの主催や、コワーキングスペース「ベースキャンプ名古屋」も始めました。

エントリーリスト

カテゴリーリスト

タグクラウド

実践! コンテンツファーストのWebサイト運用  a-blog cmsではじめるCMSプロトタイピング

2016年6月30日に株式会社ボーンデジタル様より「実践! コンテンツファーストのWebサイト運用 a-blog cmsではじめるCMSプロトタイピング」が発売されました。