Pocket

video要素でmp4ファイルを再生

動画配信のコンテンツを作成していて、Youtubeなどの動画配信コンテンツでアップロードしたものを埋め込むのではなく、video要素を用いて動画再生をしようと思い。Youtubeのロゴとかが出るのが嫌だなーと思ったので、AmazonS3に動画ファイルを置いて、そのファイルをストリーミング配信する方法をとりました。

そこで、折角だからどれぐらい再生ボタンをクリックして見てくれるか計測しようと思って、Googleタグマネージャーで設定を入れることにしました。 まずは、HTMLソースコードに以下のようにコーディング。

video要素にid属性(ここでは、id=”movie”)を設定しておきます。HTML側はこれだけ。

Googleタグマネージャー側の設定

Global site tag(gtag.js)での記述方法

カスタムHTMLタグを使用して設定しようと思います。「タグ」→「新規」でカスタムHTMLを選択して、以下のコードを記述します。

video要素に設定したid属性を目印にエレメントを変数に取得。そして、addEventListenerでplayイベントトリガーを設定。play(再生)されたらgtag関数に値を渡す。 このコードをカスタムHTMLに貼り付け。

カスタムHTMLに計測コード記述

playMovieという関数を作成して、gtag関数にデータを渡しています。dataLayer変数にpushしているんですけどね。トラッキングコードを見たら一目瞭然。

ユニバーサルアナリティクス(analytics.js)での記述方法

念の為、analytics.jsでの実装方法も残しておきます。

イベント計測の確認

準備ができたら計測できているか確認しましょう。タグマネージャーのコンテナを公開して、Googleアナリティクスのリアルタイム→イベントを見ながら、動画を再生してみましょう。

動画再生イベントの確認

計測できた!\(^o^)/
イベントカテゴリとイベントアクションに設定した値が表示されて計測がされていることが確認できました。

ちゃんとdataLayerに設定されているかは、コンソールで確認できるので見てみましょう。(GoogleChromeのDeveloperツールで見ました。Googleタグマネージャーのコンテナを公開後確認してみましょう。)

dataLayerをconsoleで確認

参考サイト