WordPress記事のタグをGoogleアナリティクスで分析する方法

WordPressのタグを集計

みなさんは、WordPressの記事にはどんなタグをつけていますか?

こんにちは、カグア!です。当ブログもWordPressを使っていますが、タグ運用はかなり戦略的に行っています。

Googleアナリティクスのコンテンツグループ機能を使って、分析する方法をご紹介します。

WordPressのタグ機能って?

WordPressでは記事に対してタグという情報を付加できます。
タグ

また、記事数が増えてきまうと、過去にどんなタグをつけたのかなど失念してしまい似たようなタグがたくさん出来てしまうというケースもあるようです。そこで、こちらのタグ管理プラグインが人気です。Simple Tags は、自動タグ付けなど多くの機能があり、運用に役立ちます。
>>Simple Tags | タグ管理・関連記事表示のWordPressプラグイン

さて、そんなタグですが、タグごとに成果を測れれば便利だと思いませんか?こういうタグの記事が成果が出てるのかー、など。今回のテーマはそこです。

コンテンツグループを用いたタグ分析例

タグ分析

Googleアナリティクスにはページをまとめるコンテンツグループという機能があります。URLでディレクトリごとにうまく分かれていれば、行動>サイトコンテンツ>ディレクトリでも集計が可能ですが、コンテンツグループは無料版ですと5つまで独自にグルーピングのための情報を付加できます。

まさしくタグですね!

たとえば、1つ目のタグには著者名を入れて、2つ目のタグにはジャンル、3つ目のタグには効果や目的、などタグ運用のルールもシンプルにできそうですよね。

タグ分析を実現する仕組み

今回は、WordPressからタグを出力する get_the_tags() という関数を使って、それをGoogleタグマネージャからGoogleアナリティクスのコンテンツグループに渡しました。
タグマネージャーを使う

Googleタグマネージャ(以下GTM)を使っていない場合は、直接Googleアナリティクスのトラッキングコードの、ga(‘send’, ‘pageview’ ); の前に、ga(‘set’, ‘contentGroup1’, ‘~’) と記述すればOKです。

>>コンテンツ グループを作成、編集する – アナリティクス ヘルプ
>>Googleアナリティクスの新機能・コンテンツグループを使って、ページを自由に分類して分析してみよう | Web担当者Forum

おおまかな手順としてはこうです。

1.Googleアナリティクスでコンテンツグループを作成
(入れ物を先に作ります)
2.GTMでタグが代入されたdataLayerをキャッチする変数を作成
3.GTMのユニバーサルアナリティクスタグのコンテンツグループ欄に2の変数を記述
3.WordPressのヘッダーにタグ出力のコードを追加

(Googleタグマネージャのコンテナタグの直前)

これで、ページビューが生じるごとにタグがコンテンツグループに記録されます。

1.コンテンツグループの作成

Googleアナリティクスのアナリティクス設定から、ビュー設定にある「コンテンツグループ」を選びます。
コンテンツグループ

「新しいコンテンツグループ」を選び、任意の名前をつけ「トラッキング コードの有効化」を選びます。

このとき、「完了」をクリックするだけでOKです。最初からオンになっていますので、ここであえてクリックをしてしまいますとオフになってしまうので注意してください。

2.タグマネージャーの設定

GTMでは、変数とGoogleアナリティクス(ユニバーサルアナリティクス)タグを設定します。
GTM

WordPressで出力されるタグのdataLayerを、データレイヤー変数でキャッチします。

その変数をGoogleアナリティクスタグのコンテンツグループに追加します。

3.WordPressからタグをdataLayerに出力

dataLayerは<script></script>で囲う必要があります。そのなかでWordPressの記事からタグを抽出する関数get_the_tags()を使います。

これをGTMのコンテナタグの前に書けば、設定したGTMの変数が稼働したときにキャッチしてくれる、というわけです。

<script>
<?php
$pptags = get_the_tags();
echo "dataLayer=[{";
if ($pptags) {
 $count = 0;
 foreach($pptags as $tag) { 
 $count++;
    echo "'tag".$count."': '".$tag->name."',"; 
  }
}
echo "}];";
?>
</script>

このコードでは、GTMで設定した変数名を「tag1」~「tag(n)」としています。タグが無いときの処理など、みなさんの環境に合わせて修正してお使いください。

>>[WordPress] 投稿データの「タグ」を取得する方法 get_the_tags | パパエンジニアの思い出

dataLayerとは

GTMのコンテナタグにデータを受け渡す仲介となるコードです。dataLayer=[{‘hoge’:’ほげほげ’}]; という記述と、任意のタイミングでデータを渡すdataLayer.push=({‘hoge’:’ほげほげ’}); があります。

今回は、GTMのタグのタイミングを制御する手間が面倒でしたので、pushせずに記述しました。

よく使われますのは、Googleアナリティクスのeコマース計測時です。購入完了画面で、任意の購入データをpushするわけですね。そのときにdataLayerを使ってGTMにデータを渡すのです。

>>e コマース トラッキング – Tag Manager ヘルプ
>>変数 – Tag Manager ヘルプ

タグ出力コードの注意

もうお気づきだと思いますが、この手法ではタグは最大で5つまでしか使えません。

WordPressでは、記事に対してタグは何個でも付けられますが、Googleアナリティクスにタグを格納するとき、コンテンツグループに1つ1つ入れるため、その制約をうける形です。

まあ、カスタムディメンションに入れたり、マージしたりなどやりようはあると思います。まあ今回は実装優勢で組んでみました。ほんとは全部まとめて集計したいですけどねえ、何か良い方法ないかな~、じつはプラグインとはじつはもうあったりしてw。

まとめ

今回ひさしぶりにdataLayerを使って、タイミングのところでハマリました。コンテナタグの前に記述してください。

1.Googleアナリティクスでコンテンツグループを作成
2.GTMでdataLayer変数とGAタグを設定
3.WordPressでタグを出力

プロが教えるいちばん詳しいGoogle アナリティクス 4 | NRIネットコム株式会社, 神崎健太

ネット上には、dataLayer.push の情報が多く、ちょっと苦労しました。まあクリックしたらデータをpushするとか、たしかに使いますものね。

でも、GTMはほんと面白いです。みなさんも、面白い使い方があったらぜひ共有しましょう。

・ ・ ・ ・ ・

>>安っ!アマゾンで半額以下になっている食品タイムセール
セール特設ページを見る

↓↓↓無料のニュースレターを配信中です

タイミング重要。