超簡単にcontact form 7のエンターキーによる送信を停止する方法

Wordpressプラグイン「contact form 7」では、テキストボックスの入力途中でエンターキーを押すと送信されてしまいます。これを止めるために、世間ではJavaScriptでどうこうしろと、そういう話になっとります。

しかしJavaScriptで対策すると、

  • contact form 7の改造になる場合がある
  • するとcontact form 7のVersion Up時にも対応が必要になる
  • ついでに超古いブラウザまで全部対応するのは割と大変である

というデメリットがあります。そこで!

超簡単にcontact form 7のエンターキーによる送信を停止する方法

やっと結論です。

  • フォームの最後に必須入力の項目をひとつ追加する

たったこれだけで対策できます。
具体的にはcontact form 7のフォーム編集画面で、

<p>[checkbox* before-send-check use_label_element "送信前にチェックを入れてください"]</p>

などの文字列を、使用するフォームの送信ボタンの直前に追加して保存します。
下の画像のようなイメージです。

これで、最後のチェックボックスにチェックを入れるまでは、途中で何度エンターキーを押されようとも送信できなくなります。簡単でしたね。

本日は以上!