LaravelでGoogle Analyticsを使う方法【現役エンジニアが解説】

PROGRAM

今回は、LaravelでGoogle Analyticsを使う方法について、簡単に解説していきます。

envファイルを編集

Laravelではenvファイルで本番環境の切り替えが可能です。

APP_ENV=local

初期設定では上記のようにAPP_ENV環境変数の値がlocalになっていることがわかります。

APP_ENV=production

本番環境ではこれをproductionにして、本番環境の場合のみ、Google Analyticsを使います。

タグ専用のBladeを作る

LaravelではViewの一部を切り出して、必要なページでincludeすることができます。

Google Analyticsのタグも全てのページで必要とも限らないため、切り出しておくと便利です。

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TRACKING_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TRACKING_ID');
</script>

上記のようなGoogle AnalyticsのコードだけのBladeを、例えば、resources/viewsの直下にgtag.blade.phpといった名前で保存します。

タグのBladeを読み込む

LaravelのBladeでは、下記のようにifとincludeディレクティブで他のBladeを読み込めます。

@if(env('APP_ENV') == 'production')
	@include('gtag')
@endif

これを使って、Google Analyticsが必要なページで先程のBlade(/resources/views/gtag.blade.php)を読み込みます。

@includeWhen(env('APP_ENV') == 'production', 'gtag')

また、上記のように、ifディレクティブなしでincludeWhenディレクティブのみで他のBladeを読み込むことも可能です。