LINE広告を配信するにあたって計測タグを設置しました。
- Ruby on Railsでサービス開発中
- 広告用計測タグを設置したい
■前提
・LINE広告を利用してコンバージョン(会員登録)計測したい
・Rails + deviseで会員登録管理を行っている
・deviseでメール認証を利用している
・メール認証が完了した会員数を計測したい
設置にあたって参考にした記事はこちらです。
とても勉強になりました、ありがとうございますm(_ _)m
LINE Tagを取得する
※LINE広告のアカウントが必要です。
広告マネージャーにログインします。
LINE Tagには、ベースコードとコンバージョンコードとカスタムイベントコードがありますが、今回はベースコードとコンバージョンコードを使用します。
詳しくはこちら
deviseを一部カスタマイズ
deviseのconfirmations_controllerをカスタマイズする必要があるため、routes.rbへ下記を追記します。
Rails.application.routes.draw do
# 〜省略〜
devise_for :users, controllers: {
confirmations: 'users/confirmations'
}
# 〜省略〜
end
続いて、confirmations_controllerをカスタマイズします。
class Users::ConfirmationsController < Devise::ConfirmationsController
# 〜省略〜
def show
super{|resource|
flash[:user_confirmed] = resource.errors.empty?
}
end
# 〜省略〜
end
上記によって、新規会員登録後の認証メールに記載のURLを経由してサインインする際に、flash[:user_confirmed]がtrueになります。
こちらの記事にて詳しく解説されています。
Viewへタグを設置
<head>~</head>内にタグを設置します。
layoutを利用している前提になりますが、下記のように設置します。
<!DOCTYPE html>
<html lang="ja">
<head>
# 〜省略〜
# ベースコードを設置
<!-- LINE Tag Base Code -->
<!-- Do Not Modify -->
<script>
# 〜省略〜
</script>
<noscript>
# 〜省略〜
</noscript>
<!-- End LINE Tag Base Code -->
# コンバージョンコードを表示
# flash[:user_confirmed]がtrueの時だけ表示されるようにする
<% if flash[:user_confirmed] %>
<script>
# 〜省略〜
</script>
<% end %>
# 〜省略〜
</head>
<body>
# 〜省略〜
</body>
</html>
設置は以上で完了です。
下記は補足ですが、renderを使うことでapplication.html.erbの<head>~</head>の可読性をあげることができます。
<!DOCTYPE html>
<html lang="ja">
<head>
# 〜省略〜
<%= render 'layouts/line_tag' %>
# 〜省略〜
</head>
<body>
# 〜省略〜
</body>
</html>
そして、app/views/layouts/配下へ_line_tag.html.erbを作成します。
# ベースコードを設置
<!-- LINE Tag Base Code -->
<!-- Do Not Modify -->
<script>
# 〜省略〜
</script>
<noscript>
# 〜省略〜
</noscript>
<!-- End LINE Tag Base Code -->
# コンバージョンコードを表示
# flash[:user_confirmed]がtrueの時だけ表示されるようにする
<% if flash[:user_confirmed] %>
<script>
# 〜省略〜
</script>
<% end %>
デプロイ後、LINE広告の管理画面にて、ベースコードのステータスが利用可能になっていればOKです。
また、コンバージョンコードについては、実際に新規登録して認証メールのURLをクリックしてみてください。
コンバージョンコードのステータスが「利用可能」になったら設置成功です。
最後に
本記事ではLINE広告のLINE Tag設置でしたが、同じ要領でその他の広告タグも設置できそうですね。