[contactform7]同一ページに複数のフォームを設置して、それぞれを計測する方法

できるよ。できたよ。本当に良かった。

前の記事を深堀りした話。

どういうことをしたいのか

Googleタグマネージャーで計測する。

「同一ページに複数のフォームを設置」というのは、フォームが1つだけだとその問い合わせの計測は可能なんだけど、フォーム内に選択項目があってどれを選んだかまで深く計測したいってなった場合には対応できない。選択項目に応じたフォームを設置して、どれから問い合わせたかを計測できたらいいよねっていう感じ。

「どのフォームから問い合わせたか」を計測するにはどうしたらいいか、ってことになる。

問い合わせの計測はGoogleタグマネージャー側で設定するんだけど、色々条件を付けられるんで折り合いをつけていこうという話。

ダメな例

contactform7は各種input関係にidなりclassなりを設定できる。「送信する」にも付けられるんで、じゃあフォームごとに送信ボタンにidなりclassを振り分けて、それのクリックを発火条件にすればいいじゃん、って考える。

これはうまくいかないダメな例。

ダメじゃない例

「○○ってclassがついてるsubmitをクリックしたら」だけでは、多分「どのformだよ」ってことで上手くいかんのだと思う。ページ内に<form>が複数あることは珍しくないし、<form>内に複数のsubmitを仕込むこともあるし、重複することは当たり前に考えられるんで、「このformのこのsubmitを押したら」って条件を組めるようにする。

form毎に、formタグ自体に、個別のclassを付ける。

form 要素に id や class 属性を追加できますか? | Contact Form 7 [日本語]

contactform7はショートコードに追記することでid、classを付与できる。

classを付けて、Googleタグマネージャー側の「Form Classes」で指定する。そうすると、各フォームの計測が取れるようになる。

コメント

タイトルとURLをコピーしました