Djangoで構築したサイトにGoogleアナリティクスを埋め込んで利用者を追跡する方法は
- 全てのテンプレートにアナリティクスタグをコピペする
- アナリティクス用テンプレートとcontent_processorを自作する
- django-analyticalパッケージを活用する
上記の3つありますが、3番目のdjango-analyticalを利用する方法が一番スマートです。
利用方法
django-analyticalをインストール
pipでインストールできます。
(本家サイトにはeasy_installを使ったインストールが紹介されていますがpipで問題なさそう)
pip install django-analytical
settings.pyを修正
settings.pyのINSTALLED_APPSに'analytical'を追加します。
# yoursite/yoursite/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'analytical',
'yourapp.apps.YourAppConfig',
]
さらに、settings.pyにGOOGLE_ANALYTICS_JS_PROPERTY_IDを追加します。
# yoursite/yoursite/settings.py
# google analyticsで取得したトラッキングIDを文字列に設定
GOOGLE_ANALYTICS_JS_PROPERTY_ID = 'UA-xxxxxx-x'
テンプレートにgoogle_analytics_jsを追加
あとは追跡したいページのテンプレートにgoogle_analytics_jsタグを追加すれば完了。
{% load google_analytics_js %}
<html>
<head>
...
{% google_analytics_js %}
</head>
...
動作確認
python manage.py runserverしてからアクセスしてみましょう。
僕の運営しているヂまるToolsのソースを確認するとこのような感じで、google_analytics_jsがgoogleのトラッキングスクリプトに置き換わっています。