パラメータ付与
機能概要
Googleアナリティクスなどのアクセス解析ツールやMAツールのパラメータなどをリンク先URLに付与することで、
フォームブロック上にリンクを設置する際にパラメータを付与させたり、フォームブロックを配置するページURLの末尾に
指定したクエリパラメータの値をフォームから指定のフィールドに自動登録することができます。
DBへの自動登録は、登録フォームブロック、更新フォームブロックでのみ可能です。
詳しい設定方法は、自動登録をご参照ください。
機能仕様
1.形式
[パラメータ]=[値]
例)id=1234
、status=new
複数のパラメータを付与する場合は「&」でつなぐ
例)name01=xxxxx&name02=yyyyy
URL直接入力の場合は、URLとパラメータを「?」でつなぐ
例)https://example.com/form?name01=xxxxx&name02=yyyyy
2.制限
(1) 使用できる文字は半角英数字のみ
(2) サービスで使用している以下のキー情報は使用不可
使用できないパラメータ名 | サービス上の使用箇所 |
---|---|
record | レコードアイテムブロック機能で使用 |
cl | クリックログイン機能で使用 |
rp | パスワード再登録フォームブロック機能で使用 |
tid | サイト認証APIで使用 |
(3) Thymeleafの仕様による制限
ThymeleafはWHATWGのドキュメントに沿ってエスケープ/アンエスケープ処理を行っています。
WHATWGのドキュメントではセミコロン(;)なしの実体参照も定義しており、
パラメータの記述によっては、文字列を実体参照とみなし、HTMLの特殊文字に変換する場合がございます。
サイト内ページリンクや th:href
、th:title
、th:text
といったTHの属性にパラメータを設定する場合、
パラメータの記述方法がWHATWGのドキュメントに記載の実体参照と衝突する時には、 &
を &
に書き換えてください。
例)パラメータに¶mter
を記載した場合、¶mter
の先頭5文字が実体参照とみなされ、特殊文字¶
に変換されます。
この場合、paramter01=xxxxx&parameter02=yyyyy
のように記述することで、正しいパラメータ名として扱われます。
UI:ページリンク追加画面でのパラメータ付与
1.ビジュアル設定でのページリンク追加画面の表示
ブロック一覧から適用させたいフォームブロックを選択、ブロック表示名をクリックします。
登録フォームタブを開き、「+」ボタンからテキストパーツを追加またはリンクを追加したいテキストパーツを選択し、「テキストリンク」ボタンをクリックします。
2.ソース設定でのページリンク追加画面の表示
ブロック一覧から適用させたいフォームブロックを選択、ブロック表示名をクリックします。
登録フォームタブを開き、「+」ボタンから「リンク」をクリックします。
3.パラメータ付与
ページリンク追加のモーダルが開きますのでパラメータ付与欄に記載してください。
サイト内ページ
URL直接入力
フォームブロックのパラメータ設定(任意値)
フォームブロックを配置するページURL末尾に指定したパラメータ値を引き継いで、該当フィールドにフォームからDBへ自動登録する「引用(任意値)」を設定できます。
詳細は自動登録の任意値(URLパラメータ値)引用を参照ください。
※1 パラメータ値にマルチバイト文字が使用される場合、ブラウザ仕様で値がエンコードされるが、自動登録やThymeleafにおいては、デコードされた値として格納します。
※2 URLのリクエストヘッダーは8192byteまで制限されており、制限を超えた場合はページがエラー(414 Request-URI Too Large)になります。
※3 クエリパラメータキーは32文字まで指定可能です。
※4 パラメータ値を格納するフィールドタイプのフォーマットに反する場合、フォームブロックのエラーステップのページが表示されます。
※5 同一キー情報が複数指定している場合、先頭のキー情報のみ参照、先頭のキー情報に紐づくパラメータ値のみ引き継いでフォームからDBへ自動登録いたします。
※6 Thymeleaf上でキー情報を指定することで、ページURL末尾に付与されたパラメータの値をhidden値のvalueとして引き継いでフォームからDBへ自動登録することができます。
フォームブロックのソース設定でパラメータ値を格納する場合は、下記をソースに追加してください。
<sp:input-field name="f01"></sp:input-field> <input type="hidden" th:name="${fields['f01'].name}" th:value="${getParams['パラメータ']}">
※上記sp:input-field
タグのname属性や、input
タグのth:name属性に指定する値は、パラメータの値を格納するフィールドのname属性を指定してください。
フィールドのname属性は、ソース設定の場合、フォームブロック>入力ステップ>フィールド一覧から確認することができます。
※上記のgetParams['パラメータ']
に指定するキー情報は、URL末尾に付与するパラメータのキーを設定します。
フォームブロックの各ステップのパラメータ(自動付与)
SPIRAL ver.2ではページの中にフォームブロックを配置しますが、登録フォーム/更新フォームブロックに限り、
ブロックやブロックのステップ情報を識別するパラメータを自動付与いたします。
これにより、Google Analyticsなどのアクセス解析ツール上で、訪れたページのビュー数などを計測しやすくなり、ページのアクセス解析に役立てます。
パラメータ付与対象ブロック
登録/更新フォームブロックにパラメータが付与されます。
URL表示形式
URLの表示形式は以下の仕様となります。
ページURL?_{[フォーム種別]登録:ifbs, 更新:ufbs}-{フォーム識別名}=s{ステップの順番}_{ステップ表示名} 例)https://pipedbits-corporatesite.spiral-site.com/page1?_ifbs-form1=s1_Step1
※ステップ表示名にはマルチバイト文字が使用可能です。ブラウザのアドレスバー上に表示されるステップ表示名がURLエンコードされるかはブラウザの仕様に依存いたします。
※完了ステップの場合、フォーム識別名以降の表示が=completion
と表示されます。
フォームブロックのステップをPHPで取得する場合、下記ページをご参照ください。