URLをコピーしました!
スキルアップを始める!

【ContactForm7】非表示の値を渡して送信する|hidden(隠し入力項目)

WordPress(ワードプレス)
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

hiddenで値を送信する

ContactFormに非表示の入力項目を用意したいと思ったときは、フォームタグタイプ hidden が使えます。

例えば、下記のように指定します。

[hidden testId01 default:'テスト1']
[hidden testId02 default:'テスト2']
[hidden testId03 default:'テスト3']

[submit]

画面上は送信ボタンのみになりますが、それぞれの名前(この場合testId01〜testId03)の値を受け取ることができるようになります。

本文にIDをセットして送信してみます。

hiddenの内容が送信されました。

スプレッドシートの関数も組み込める

hiddenで値を送信できるので、スプレッドシートの関数として送信することもできます。

関数の送信例

スプレッドシートに値を動的に取得したい場合、例えば、以下のように指定すると、最終行には行番号が入ります。row関数を使用するという部分がポイントです。

[hidden testId01 default:'=row()']

例えば5桁で0埋めしたい、といった場合は、以下のようにTEXT関数を組み合わせることでも可能です。

[hidden testId02 default:'=text(row(),"00000")']

さらに、列を動的に取得したい場合はINDIRECT関数を併用することで可能です。これで、動的にD列の末尾(厳密味は行番号)を取得して反映してくれます。

[hidden testId03 default:'=INDIRECT(”D”&row()']

これで、hiddenフィールドがフォームに追加され、非表示の値が送信されるようになりました。

ちなみに、この方法を使用する場合、ダブルクォーテーションで囲んでしまうと、途中で設定が途切れてしまうので、うまく反映されません。

[hidden testId03 default:'=INDIRECT(”D”&row()']

シングルクォーテーション「’」で囲んでいる、という点がポイントですね。

まとめ

Contact Form 7では、hidden(隠し入力項目)フィールドを使用して非表示の値を渡すことができます。hiddenフィールドは、ユーザーには表示されず、フォームの送信時に値が送信されます。便利ですね!

注意点としては、設定を間違えるとデータの反映がおかしくなったり、ユーザーが送信できなくなる場合もあります。また、ユーザーに見えない項目をセットすることになるので、使い方にはくれぐれも注意しましょう。

設定には注意しながら、設定ください。

Kindle Unlimited 会員は無料で購読できます
購読はこちら
Kindle Unlimited 会員は無料で購読できます
購読はこちら