閲覧ページ数をcookieに保存するJavascriptタグの活用法

閲覧ページ数によって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時間のプログラミング学習に耐え抜くコツ」という記事がおすすめです。