20
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

QiitaのGoogle Analyticsを見やすくする(URLを記事名で上書き)

Last updated at Posted at 2017-01-04

#QiitaのGoogle Analyticsを見やすくする
カスタムフィルタを利用して記事名でURL上書き

GoogleアナリティクスでQiitaの記事の状態を確認するとき、URLが
http://qiita.com/AQRiL_1132/items/4e1d8eb980b952275c09
のように表示され、何のページなのか全く分からないので、強制的に記事URLを記事名によって以下のように上書きしてしまうフィルタを作りました。

▼Before
http://qiita.com/AQRiL_1132/items/4e1d8eb980b952275c09
▼After
http://qiita.com/AQRiL_1132/items/【Excel】 日時情報の正体

これを設定することで行動フローも見やすくなり、
image

プライマリディメンジョンを一々「ページタイトル」に切り替える必要もなくなります。
image

QiitaへのGoogleアナリティクスの設定そのものの手順についてはこちらの記事を参考にどうぞ
QiitaでGoogleアナリティクスを利用する手順 - Qiita

##手順

① カスタムフィルタの作成

記事URLを強制的に記事タイトルで上書きするフィルタを作成します

####手順1-1. アカウントの「すべてのフィルタ」をクリック
image

####手順1-2. 「+フィルタを追加」をクリック
image

####手順1-3. フィルタを以下のように作成
フィルタ名に「Qiita_記事タイトルパス上書き」などの任意の名前を入力
「カスタム」をクリック→「詳細」をクリック

image

以下のように内容を入力
image

設定内容

設定項目 設定項目2 設定内容
フィルタ名 - Qiita_記事タイトルパス上書き
フィルタの種類 カスタム  詳細
フィールド A -> 引用 A リクエストURI (^/[^/]+/items/)([0-9a-z]+)
フィールド B -> 引用 B ページタイトル (.*)( - Qiita.*)
出力先 -> 構成 リクエストURI $A1$B1
フィールド A は必須 - チェック
フィールド B は必須 - チェック
出力フィールドをオーバーライド - チェック
大文字と小文字を区別 - -

「ビューにフィルタを適用」は一旦無視して「保存」

② カスタムフィルタフィルタ適用先ビューの作成

先程作成したカスタムフィルタは適用したビューのレポート中のURLを本来存在しない架空のURLに変えてしまいます。又、これまでのレポートとのデータ整合性も無くなるので、いつも使っているビューとは別に「フィルタを適用するビュー」を新たに作成します。
これにより、これまでのビューはそのまま閲覧可能な状態で、安心してカスタムフィルタを使用することができます。

####手順2-1. ビューの「ビュー設定」をクリック
image

####手順2-2. 「ビューをコピー」をクリック
image

####手順2-3. 任意の名前を付けて保存
image

③ フィルタの適用

先ほど作成したビューにカスタムフィルタを適用
####手順3-1. ビューの「フィルタ」をクリック
image

####手順3-2. ビューの「+フィルタを追加」をクリック
image

####手順3-3. フィルタを適用
「既存のフィルタを適用」→作成したカスタムフィルタをクリック→「追加」→「保存」
image

設定完了

新たに作ったビューはGoogleアナリティクス内のURLを開くためのリンクをクリックしても、該当のURLは実際には存在しないURLであるため、404になります
image

##カスタムフィルタの解説
正規表現を使用して必要な情報を抽出、リクエストURI(=レポートに記録されるURLのパスとクエリパラメータ部分)を強制的に上書きしています。

image

フィールドA
リクエストURIの抽出

設定項目 設定項目2 設定内容
フィールド A -> 引用 A リクエストURI (^/[^/]+/items/)([0-9a-z]+)
フィールド A は必須 - チェック

リクエストURIの正規表現で書き換え対象となるURLを指定し、必要な情報を抽出するため括弧記号でグループ分けしています。

Googleアナリティクスに入ってきたURLが http://qiita.com/AQRiL_1132/items/4e1d8eb980b952275c09 であるとき、
リクエストURIは/AQRiL_1132/items/4e1d8eb980b952275c09になります。

「出力先 -> 構成」の部分で
$A1と入力することにより、正規表現グループ1(^/[^/]+/items/)の部分に該当する /AQRiL_1132/items/の部分を、
$A2と入力することにより、正規表現グループ2([0-9a-z]+)の部分に該当する
4e1d8eb980b952275c09の部分を出力可能です。
このフィルタでは$A1のみを利用しています。

リクエストURIがこの正規表現に該当しないとき、このカスタムフィルタは無視されます。

フィールドB
ページタイトルから記事名を抽出

設定項目 設定項目2 設定内容
フィールド B -> 引用 B ページタイトル (.*)( - Qiita.*)
フィールド B は必須 - チェック

記事のページタイトルには「【Excel】 日時情報の正体 - Qiita」のように 必ず後ろに「 - Qiita」が付きますが、この部分は不要です。
記事名である「【Excel】 日時情報の正体」のみを抽出するため、正規表現でグループ分けしています。

Googleアナリティクスに入ってきたページタイトルが 「【Excel】 日時情報の正体 - Qiita」であるとき、
「出力先 -> 構成」の部分で
$B1と入力することにより、正規表現グループ1(.*)の部分に該当する
「【Excel】 日時情報の正体」の部分を、
$B2と入力することにより、正規表現グループ2( - Qiita.*)の部分に該当する
「 - Qiita」の部分を出力可能です。
このフィルタでは$B1のみを利用しています。

ページタイトルがこの正規表現に該当しないとき、このカスタムフィルタは無視されます。

出力先 -> 構成
リクエストURIを上書き

設定項目 設定項目2 設定内容
出力先 -> 構成 リクエストURI $A1$B1
出力フィールドをオーバーライド - チェック

先ほど抽出した情報を使って、リクエストURIを上書きします。
$A1$B1なので、
フィールドA(元々のリクエストURI)の正規表現グループ1(^/[^/]+/items/)に該当する文字列の後ろに
フィールドB(ページタイトル)の正規表現グループ1(.*)(記事名)に該当する文字列が付いた状態でリクエストURIが上書きされます。

今回の例では、
リクエストURI/AQRiL_1132/items/4e1d8eb980b952275c09
/AQRiL_1132/items/【Excel】 日時情報の正体に上書きされて出力されるようになります。

##おまけ

どうせURIが存在しないものに置換えられてしまうので、パスが壊れることを気にしないのであれば以下のようにカスタムフィルタを設定してしまうとスマホアプリでも見やすくて楽かもです。

Googleアナリティクス - Android版ダウンロード
Googleアナリティクス - iOS版ダウンロード

image

設定内容

設定項目 設定項目2 設定内容
フィルタ名 - Qiita_記事タイトルパス上書き
フィルタの種類 カスタム  詳細
フィールド A -> 引用 A リクエストURI (^/[^/]+/items/)([0-9a-z]+)
フィールド B -> 引用 B ページタイトル (.*)( - Qiita.*)
出力先 -> 構成 リクエストURI /a/$B1
フィールド A は必須 - チェック
フィールド B は必須 - チェック
出力フィールドをオーバーライド - チェック
大文字と小文字を区別 - -

image

20
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?