ContactForm7にプレビューは必要なのか?
半年ほど前に『Contactform7にプレビュー機能は付けられるのか?』というエントリーを書きました。
半年経ってなお、未だにそのエントリーへのアクセス数がここでのナンバーワンだというorz
それだけContact Form7のプレビュー画面の必要性が求められて言うと言うことなのでしょう。
そう思う反面、本当に必要なのだろうか?という疑問を感じているおいらもいます。
プレビューとは、つまり、記入した内容の『確認』するための機能なのですから、利用者が送信ボタンをクリックする前に記入した内容の『確認』が行えれば良いと言うことだと決めつければ、問題を絞ることが出来ますね。
問題の一つは確認したかどうかに係わらず『送信ボタンをクリック』してしまえること。
内容を確認したのかどうかは、プレビュー画面を作ったところでContact Form7は知るよしもないのでw、確認をしたかどうかを利用者に『責任転嫁』してしまえばよいことです(ヲイ)。
幸いにもContact Form7には『承諾の確認』(タグ名:acceptance)というチェックボックスが用意されています。
これは、ユーザー登録をするときなどに『規約の同意』などによく使われる機能で、このチェックボックスをチェックしないと送信ボタンが『有効にならない』という動作をします。
まあ、ここの『Contact form』でも使っていますが、『記入内容を確認したら、チェックを入れてください。』と記述しています。
つまり、チェックボックスをチェックしたと言うことは『記入した内容は確認済みですよ』という了解を利用者がしたと言うことになります。
こうしておけば、わざわざプレビュー画面を別個に作る必要性は薄れますよね。
しかしながら、問題はもう一つあります。
テキストボックスの『視認性』の問題です。
テキストボックスは標準では『固定サイズ』なので、ボックス一杯に記入するとスクロールバーが表示されてスクロールしないと見ることが出来なくなってしまいます。
これだと、視認性が悪く、確認の『見落とし』ということが起こりえます。
では、ボックスを最初から大きくしておけばいいのでは?
それも一つの手法だと思いますが、デザイン上、カッチョ悪い状況も起こりうるでしょう。
そこで、jQueryのプラグインを使うのはどうでしょうか?
『テキストエリアを入力内容に応じて自動でリサイズするjQueryプラグイン「autoResize」』と言うのが紹介されていますから、これを『テキストボックス』に適用すれば、テキストボックスにめいっぱい記入しようとしても、あふれる前に自動的にボックスの高さを拡張してくれるようになります。
もちろん、javascriptですから、javascriptの実行を許可していないブラウザでは機能しませんが、今時、実行を許可していないユーザーはごく少数だと思いますし、それほど用心深い人はこういったフォームは利用しないと思いますけどねw
WordPressのプラグインを作る技量のある方でしたら、カスタムフィールドに対象とするテキストボックスのid名を列記しておいて、実行させる…なんて言うのも可能だと思われます。
えっ?
作ってないのかよって???
いや、そのぉ…夏バテで気力がないんです…
ええっ、あやしいって?!
…スミマセン…モンハンばっかりやってます…orz