cform2とcontact form7で試してみたのですが、ユーザーが入力を済ませ送信を押すとそのまま送信してしまいます。「確認などのボタンから、入力した内容を一度表示し、ユーザーが確認をして送信ボタンを押して確定」という流れにしたいのです。
WordPress のコメントフォームは、原則として「送信したらすぐ反映」なので、Contact Form 7 も、同じ挙動にしているのだと思います。つまり、プラグイン作者が「確認画面を出さない方が分かりやすい」と考えているのでしょう。
で、プラグインを改造して確認画面を出す方法ですが、ウェブアプリでそういう挙動を追加するのは比較的難しい部類に属します。なぜならば、入力画面/確認画面/送信後の画面の3つの状態をうまく管理し、いきなり途中の状態に入らないように制御しなければならないからです。
ある程度 PHP を理解していて、自分で確認画面つきのフォームを作成した経験があれば、そういう改造はできると思いますが、勉強中の初心者であれば、やめておいた方が無難です。スキルアップを兼ねて製作してもいいと思いますが、おそらくセキュリティーホールを作り込んでしまうなど、ミスが出てくる可能性が大です。勉強するならば、他人の目に触れない実験サイトで行なってください。実運用している本番サイトでやるのは危険です。
とりあえずは、作者に相談してみるのが一番早いでしょう。
もしくは「WordPress では確認画面を出さないのが文化だ」と思ってあきらめる手もあります 😉
確認画面を出すプラグインは知らないのですが、他の理由からなのですが、無料cgiを使ったフォームページをワードプレスの外に置き、見かけをワードプレスのページと同じにして、メニューにテーマファイルに直書きでリンクを置いて使用したことがあります。外から見て気付かれることはほとんどないでしょう。
今は contact form7 をメインに使わせてもらっていますが、送信ボタンの直近に「確認画面は出ません。入力を再度確認してからボタンを押してください」みたいなアナウンスを置いています。自動返信も使えるのでそこで確認を促すという手もあります。
Contact Form 7 の作者です。こんばんは。
作者の意図は lilyfan さんご指摘の通りです。確認画面は本来「いらないもの」というのが Contact Form 7 でのスタンスですので、今後もおそらく追加されることはありません。
もちろんその考えが絶対正しいと言い張りたいわけではなくて、個々のプラグインには固有の設計思想があるんだという話で、ですからもし確認画面付きのお問い合わせフォームプラグインが欲しい場合はもともと確認画面が使えるプラグインを探すか、作るかするべきです。
僕の知っている範囲ではそういう確認画面が使えるコンタクトフォームのプラグインは存在しません。ページ遷移がからむと汎用化がしづらいのでプラグイン向きの処理ではないのかもしれません。もしどうしても改造を試みるなら Contact Form 7 みたいなゴチャゴチャしたものより元祖 WP Contact Form のようなシンプルなものを土台に始めたほうが、まだ無難です。
WP Contact Form http://wordpress.org/extend/plugins/wp-contact-form/
トピック投稿者
gyas
(@gyas)
たくさんの回答ありがとうございます。
どうしても確認画面が必要であるようならば、CGIなどをもってくる必要があるようですね。
確認画面はでませんというコメントを入れるのも良いですね。
Contact Form 7様のページに他の方でこの様な問い合わせも拝見しました。
フォームにおいては制作者様、皆様がシンプルで確認画面はいらないという感じのようですね。
どのご意見もとても参考になりました。
Contact Form 7 を使っていますが
送信ボタンを押してから完了するまで
1分20秒ぐらいかかります
何か設定があるのでしょうか?
自己レスですが
結局,サーバー上でmailコマンドでメールを送る事自体1分ぐらい
かかっていたのでこれが原因だと思われます
ajaxでサーバーからの帰りを待つために遅くなっているようです
送信時にajaxやめることは可能でしょうか?
ただ,必須とかのチェックはajaxでさしたいし,正常にメールが送られたかも
確認したいのですが・・・
結局,サーバー上でmailコマンドでメールを送る事自体1分ぐらい
かかっていたのでこれが原因だと思われます
ではまずこれをどうにかする必要があるのではないですか? ホスティングサーバーか何かをお使いならそこのサポートに問い合わせてください。