【Vue3】GTM(Googleタグマネージャー)を設置する
はじめに
Vue3でSPA(シングルページアプリケーション)を作成する際にGoogleタグマネージャーを利用してページビュートラッキングを取る方法についてご紹介します。
以下、GoogleタグマネージャーをGTMと言います。
1. GTM コンテナIDを取得
Googleタグマネージャーでコンテナを作成し、コンテナID(GTM-xxxxxxx)を取得しておいてください。
2. Vueアプリケーションインストール
Vue公式リファレンスの通りにインストールを実行してください。
3. Vue GTMプラグインをインストール
Vueアプリケーションのインストールが完了したら、次はVue版GTMプラグインのインストールをしていきます。
npm install @gtm-support/vue-gtm
👇 プラグイン説明
本プラグインはVue3系以上から利用できるVue版GTMプラグインとなります。
また、VueRouterと連携した画面の自動追跡も可能なので、SPAにおいても各ページ閲覧時のトラッキングが取れるというわけですね!! これはありがたいかぎりだ..
ちなみにVueRouterは4系以上から利用可能だそうです!
4. GTMトラッキング設定を行う
では、GTMトラッキング設定を行っていきます。今回はvueRouterを利用している前提で記載していきます。設定はmain.js
に記述していきます。
なお、以下の設定値以外にも設定項目が用意されているので見てみてね!
import { createApp } from 'vue'
import { createGtm } from '@gtm-support/vue-gtm' // GTMプラグインインポート
import App from './App.vue'
import router from './router'
const app = createApp(App)
app.use(router)
/**
* VueGTMを用いたPageViewトラッキング送信
*/
app.use(
createGtm({
id: "GTM-xxxxxxx", // GTM_IDをいれる
defer: false, // ページの読み込みを高速化(トラッキング精度低下の可能性あり)
debug: false, // コンソールログのデバッグを表示するかどうか
loadScript: true, // GTMスクリプトを読み込むかどうか
vueRouter: router, // vueRouterと自動的に同期するインスタンスを設定
ignoredViews: ['notFound'], // 指定したルーター名はトラッキングしない(例:404ページなど)
trackOnNextTick: true // Vue.nextTick で trackView を呼び出すかどうか
})
)
app.mount('#app')
上記の設定でvueRouterと連携したページビュートラッキングが取れるようになるかと思います。
しかし、トラッキングはローカル環境では計測したくないっていうケースがほぼ確実にあるんじゃないかなと思います。
次は、プロダクション(本番)環境でのみトラッキング計測を有効にする方法をご紹介します!
5. プロダクション(本番)環境でのみトラッキング計測するために
環境変数(.env)でローカル or 本番環境かを判別した上でトラッキング計測を実行していきす。
5-1. 環境変数を定義
# ローカル環境用 環境変数(抜粋)
APP_ENV=local
VITE_GTM_ID=""
# 本番環境用 環境変数(抜粋)
APP_ENV=production
VITE_GTM_ID="GTM-xxxxxxx"
# 各環境に合うように値を変更すること。
APP_ENV=production
VITE_GTM_ID="GTM-xxxxxxx"
5-2. トラッキング制御の編集
...省略
/**
* VueGTMを用いたPageViewトラッキング送信
* 動作環境:本番環境のみ
*/
if (import.meta.env.PROD) { // 本番環境の場合のみトラッキングを有効にする
app.use(
createGtm({
id: "import.meta.env.VITE_GTM_ID", // GTM_IDを.envから読み込む
defer: false,
debug: false,
loadScript: true,
vueRouter: router,
ignoredViews: ['notFound'],
trackOnNextTick: true
})
)
}
app.mount('#app')
6. GTMタグが設置されているか確認
GTMタグ設置確認は私の場合はChrome拡張機能であるGoogleTagAssistantを使っています。
無事に設置できていれば👇のように表示されるはずです。
7. 最後に
今回はVue3アプリケーションにおけるGTMトラッキング計測設定方法をご紹介しました!
誰かの役に立ってくれることを祈って、あざした👋
Discussion
理解