A-Member:ログイン会員ごとにどのページを閲覧しているか把握したい(Googleアナリティクス)
ログイン中のユーザ会員が、実際にどのページを閲覧しているか、とか、デバイスをまたいだユーザ行動を把握したい場合があります。
ここでは、GoogleアナリティクスのUser-ID 機能を利用して、ログイン中会員の振るまいを分析する方法をご紹介します。
User-ID機能は、Google アナリティクスの送信データにユーザーの一意のID を含めることにより、個別ユーザーのエンゲージメント データを、セッションやデバイスをまたいで識別することができるものです。
A-Memberでは、ログイン中ユーザーのエントリーIDを取得するタグ mt:AMemberAuthedEntryID
が提供されており、これをGoogleアナリティクスに渡す User-ID 値として利用可能です。
サンプルコード(analytics.js の場合)
<script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); <mt:PartialDynamicPublishing> <mt:AMemberIfLogin> ga('create', 'UA-XXXXXXXXX', { 'userId': '<mt:AMemberAuthedEntryID>' }); <mt:Else> ga('create', 'UA-XXXXXXXXX', 'auto'); </mt:AMemberIfLogin> </mt:PartialDynamicPublishing> ga('send', 'pageview'); </script>
User-IDとして渡すのはユーザの永続的な一意の値であればなんでもいいので、会員情報に条件にあうデータがあれば、それを使うことも可能です。
例えば 会員番号(パーツ名: id)というフィールドがあったとします。
前述のコード9行目はこう変わります。
ga('create', 'UA-XXXXXXXXX', { 'userId': '<mt:AMemberInfo key="id">' });
<注意>
User-IDとして、メールアドレスなど個人が特定できてしまう値は使わないでください。
ログインIDはメールアドレスの場合があるので、代わりにエントリーIDを使う方法を推奨しています。
ドキュメント:A-Member 会員情報の取得
会員のエントリーIDを取得する:A-Memberドキュメント
https://www.ark-web.jp/movabletype/a-member/docs/AMemberAuthedEntryID.html
ログイン中の会員情報の取得(会員制プラグインA-Memberドキュメント)
https://www.ark-web.jp/movabletype/a-member/docs/userinfo.html
その他補足情報
User-ID機能の詳細については、Googleの文献をご参照ください。
User-ID 機能について - アナリティクス ヘルプ
https://support.google.com/analytics/answer/3123662?hl=ja&ref_topic=3123660
Google アナリティクスのバージョンによって実装コードが異なります。 WEB担当者の備忘録 さまの下記記事では analitics.js, gtag.js, GTMを使った実装までカバーされており参考になります。