疑問
Googleタグマネージャー(GTM)でIPアドレスを取得して表示するにはどうすればいい?
IPアドレスは、Googleアドセンスの無効なクリックを報告する時に使えます。
Googleタグマネージャー(GTM)でIPアドレスを取得して表示する方法を紹介します。
Googleタグマネージャー(GTM)でIPアドレスを取得する方法
Googleタグマネージャーを使ったIPアドレスの取得は下記の手順で実施します。
※Googleタグマネージャー(GTM)では、Googleアナリティクス(ユニバーサル)を使って設定します。
- Googleアナリティクスでカスタムディメンションを作成する
- dataLayerにIPアドレスを格納する
- Googleタグマネージャーを修正する
Googleアナリティクスでカスタムディメンションを作成する
まず、Googoleアナリティクスでカスタムディメンションを作成します。
Googleアナリティクスを開いて、左下メニュー「管理」をクリックします。
プロパティ設定にある「カスタム定義」の「カスタムディメンション」をクリックします。
「新しいカスタムディメンション」をクリックします。
カスタムディメンションの情報を入力して「作成」をクリックします。
- 名前:ip_address(分かりやすい名前ならOK)
- 範囲:ユーザー
- アクティブ:チェックを入れる
同様にアクセス時間も作成します。
- 名前:access_time(分かりやすい名前ならOK)
- 範囲:ユーザー
- アクティブ:チェックを入れる
追加が完了すると一覧が表示されます。
「カスタムディメンション名」と「インデックス番号」はあとで利用するのでメモしておきます。
次に、カスタムディメンションに値を渡すための変数(dataLayer)を作成します。
dataLayerにIPアドレスを格納する
Googleタグマネージャーにデータを受け渡す場合は、dataLayerを使います。
<?php $ipaddress = $_SERVER["REMOTE_ADDR"]; $accesstime = date("Y/m/d H:i:s"); ?> dataLayer = [{ 'ip_address': '<?php echo $ipaddress; ?>', 'access_time': '<?php echo $accesstime; ?>', }];
※dataLayer.pushしなくても取得できます。
上記のコードを作成し、PHPファイル(ganalytics.php)として保存します。
ganalytics.phpをサーバーにアップロードする
ファイルのアップロード先は下記の場所にしています。
jsフォルダがない場合は新規に作成してください。
/wp-content/themes/子テーマ名/js
※親テーマはアップデートがあると変更したものが元に戻ってしまうため、子テーマを利用している前提で説明しています。
header.phpでganalytics.phpを読み込む
次にheader.phpを編集し、タグマネージャの前にganalytics.phpを設定して、Javascriptとして起動させます。
- タブマネージャーのタグはheader用とbody用がありますが、header用の前に追加してください。
- ganalytics.phpのパスは、絶対パスにしています(自分のドメインと子テーマ名の部分は、自分の環境に合わせて変更してください)。
<!-- Google Tag Managerの前に設定 --> <script type="text/javascript" src="https://自分のドメイン/wp-content/themes/子テーマ名/js/ganalytics.php?v=1"></script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-XXXXXX');</script> <!-- End Google Tag Manager -->
Googleタグマネージャーを修正する
次にGoogleタグマネージャーで新しいタグ(計測タグ)を追加します。
Googleタグマネージャーに移動して「新しいタグを追加」をクリックします。
「タグの設定」をクリック。
「Google アナリティクス ユニバーサル アナリティクス」をクリックして設定します。
トラッキングタイプは「ページビュー」で、「Googleアナリティクスの設定」をクリックして「新しい変数」を選択します。
変数を設定する画面が表示されます。
「トラッキングID」にGoogleアナリティクスのトラッキングIDを記入します。
次に「詳細設定」>「カスタムディメンション」>「カスタムディメンションを追加」をクリックします。
インデックスを「1」に設定して、ディメンションの値は新しい変数を作成するため、ブロックのアイコンをクリックします。
ディメンションの値を新しく作成するため、「+」をクリックします。
「変数の設定」をクリック。
変数タイプの選択で「データレイヤーの変数」をクリックします。
データレイヤー変数を以下のように設定します。
- 【変数の名前】IPアドレス(分かりやすい名前ならOK)
- 【データレイヤーの変数名】ip_address(dataLayerで設定した変数、かつ、カスタムディメンションのインデックスが「1」の変数名)
設定が終わったら「保存」します。
続いてカスタムディメンションのインデックス「2」に設定した変数「access_time」も設定します。
「カスタムディメンションを追加」をクリックします。
データレイヤー変数を以下のように設定します。
- 【変数の名前】アクセス日時(分かりやすい名前ならOK)
- 【データレイヤーの変数名】access_time(dataLayerで設定した変数、かつ、カスタムディメンションのインデックスが「2」の変数名)
設定が終わったら「保存」します。
カスタムディメンションが設定されたのを確認したら「保存」をクリックします。
タグの画面に戻ってきたら、トリガーに「All Pages」を設定して「保存」します。
タグの保存が完了したら、画面右上の「公開」ボタンをクリックします。
※公開しないと反映されません。
Googleアナリティクスで取得したIPアドレスを確認する
タグが正常に動いていれば、Googleアナリティクスで取得したIPアドレスを確認できます。
Googleアナリティクスを開いて「カスタム」>「カスタムレポート」をクリックします。
レポートを下記のように設定して「保存」します。
計測日付は、自分が計測したい日を設定します(当日分を確認したい場合は、変更が必要です)。
- 【種類】フラットテーブル
- 【ディメンション】ip_address
- 【ディメンション】access_time(任意)
- 【ディメンション】時間帯(任意)
- 【指標】ページビュー数
IPアドレスやアクセス日時などが表示されます。
【まとめ】GoogleタグマネージャーでIPアドレスを取得して表示する方法
GoogleタグマネージャーでIPアドレスを取得する場合は、下記の手順でおこないます。
- Googleアナリティクスでカスタムディメンションを作成する
- dataLayerにIPアドレスを格納する
- Googleタグマネージャーを修正する
メモ
もし、すでに「Googleアナリティクス:ユニバーサルアナリティクス」でページビューを設定している場合は、2重カウントになってしまうので停止か削除が必要です。
-
-
【Googleアドセンス狩り】無効なトラフィックでIPアドレスを報告するには?
疑問 Googleアドセンス狩りにあった。第三者による無効なトラフィックだと思うけど、IPアドレスを報告するにはどうすればよい? Googleからの通告メール「お客様の AdSense アカウントでの ...