フォーム送信時にURLにパラメータを付与する
HubSpotフォームを利用してアフィリエイトのコンバージョンを計測するには?
実現したいこと / 背景
アフィリエイトサイトを利用しているウェブサイトへの実装です。フォームは、WordPressで作成されたページにエンベッドコードで埋め込んでいます。
フォーム送信後にリダイレクトされるサンキューページには、別途<head>
内にアフィリエイトの計測タグが埋め込まれています。送信を識別するためのIDに電話番号を使用しているため、サンキューページに電話番号のデータを渡す必要があります。
データの渡し方
フォームに入力された電話番号の値をサンキューページのURLのパラメーターとして設定。ページ側では、PHPの$_GET
で値を取得しています。
実装のポイント
- フォームに入力された電話番号の値を取得
$form.find('input[name="phone"]').val();
- サンキューページのリダイレクト設定
window.location.href = "https//xxx.xxx.jp";
- タイムラグが発生することを考慮し、リダイレクトするまで2.5秒ほど間をとる
スクリプト
- <script charset = "utf-8" type = "text/javascript" src = "//js.hsforms.net/forms/v2.js" ></script>
- <script>
- hbspt . forms . create ({
- portalId : "xxxxxxx" ,
- formId : "xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxx" ,
- inlineMessage : "このページはリダイレクトされます" ,
- onFormSubmit : function ( $form ) {
- setTimeout ( function () {
- var website = $form . find ( 'input[name="phone"]' ). val ();
- window . location . href = "https://www.100inc.jp/thanks?id=" + website ;
- }, 2500 ); // 2500ミリ秒遅延させる
- },
- });
- </script>
サンキューページのURL:
https://www.100inc.jp/thanks?id=000-000-0000
執筆者:Admin