閲覧ページ数によってGoogleAnalyticsやMixpanelのタグを発行する方法をまとめます。
閲覧ページ数をcookieに保存するJavascriptタグ
まず、閲覧ページ数をcookieに保存するJavascriptのタグをサイトに設置します。
<script>
function setCookie(name, value) {
var cookie = name + "=" + value + "; path=/; domain=." + location.hostname.replace(/^www\./i, "");
document.cookie = cookie;
}
function getCookie(name) {
var cookies = document.cookie.split(";"),
toReturn;
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].trim();
if (cookie.indexOf(name + "=") === 0) {
toReturn = cookie.substring((name + "=").length, cookie.length);
}
}
return toReturn;
}
(function() {
var pageviewCount = getCookie("pageviewCount");
if (typeof pageviewCount === "undefined") {
pageviewCount = 1;
} else {
pageviewCount++;
}
setCookie("pageviewCount", pageviewCount);
})();
</script>
ファーストパーティcookie変数の設定
Googleタグマネージャーに閲覧ページ数を受け取るための変数を設定します。
先程、設定したJavaScriptには、pageviewCountというファーストパーティcookie変数に閲覧ページ数を保存するように書かれていましたので、Googleタグマネージャーにも、そのように設定します。
一定ページ数以上閲覧したときに発火するトリガーの設定
トリガーを設定します。今回は3ページ以上閲覧したユーザー用のトリガーを設定します。
トリガータイプは、「ページビューのウィンドウの読み込み」を選択します。
そして、pageviewCountが3以上のときに発火するようにします。
このトリガーによって発行されるGoogleAnalyticsのイベントやMixpanelのイベントのタグをGoogleタグマネージャーに設定すれば完了です。
一定ページ数閲覧したユーザーとそうでないユーザーを比較分析する際などに使えます。
参考:The Magic of Google Tag Manager and Cookies
Ruby on Railsをこれから本格的に勉強したい人は「エンジニアになるための600時間のプログラミング学習に耐え抜くコツ」という記事がおすすめです。