WordPressには2台巨塔のお問い合わせフォームプラグインがあります。
- Contact Form 7
- MW WP Form
いつもお世話になりっぱなしで、開発者の方には足を向けて寝ることはできません…。本当にありがとうございます。
この2つのお問い合わせプラグインですが、できることや動きが微妙に異なったりするので、案件に応じて合う方を選択した方がいいかと思います。
約300件のWordPressの経験からわたしなりの判断基準をまとめたので、どちらのプラグインを使おうか迷っている方は参考にしてみてください!
Ajax的に使うか
画面が遷移せずに、完了メッセージやエラーメッセージを表示させたいかどうかが、1つの大きな基準となるかと思います。
画面遷移なし → Contact Form 7
Contact Form 7は同じ画面上でエラーメッセージや完了メッセージを表示します。画面遷移はせずに、表示部分はJavaScriptで制御されているようなイメージですね。
なので画面遷移なしに、同じページだけで完結させたい場合はContact Form 7が向いているかもしれません。例えば、ペラ1のLPページなどでしょうか。
画面遷移あり → MW WP Form
MW WP Formは動きを見る限りは基本的にはPHPに命令して処理が動いているかと思います。送信ボタンを押したときのエラー確認もPHPに直接的に問い合わせて確認して同じページにアクセスしているといったイメージです。
画面遷移がほしいサイトの場合は、MW WP Formを使うといいかと思います。具体的には次で紹介するように確認画面や完了画面をURLで明確に分けたいようなサイトですね。
余談:クルクルするかどうか
(たぶん)より分かりやすいイメージとしては、送信ボタンを押した時にタブ横がアクセス中っぽいクルクルが回るかどうか。
MW WP Formはクルクルして、Contact Form 7はクルクルしません。
確認画面が必要か
確認画面が必要かどうかは案件によって異なると思います。必要な場合は、どちらを使うかちゃんと考えて決める必要がでてきます。
確認画面が不要 → Contact Form 7
Contact Form 7には標準で確認画面の機能が備わっていません。送信 → 完了メッセージが画面遷移なく行われる超シンプル設計がContact Form 7です。
ただ、「Contact Form 7にも確認画面がほしい!」という要望もあったりします。そういう場合は、以下のようなプラグインを追加することで対応することは可能です。
確認画面が必要 → MW WP Form
MW WP Formには確認画面の機能が標準で搭載されています。日本人が好きそうなちゃんと画面遷移するタイプの確認画面です。
確認画面 → 完了画面と、画面遷移しながら(かつURLも分けることが可能)しっかりと段階を経たお問い合わせフォームにしたい場合はMW WP Formが向いています。
作成方法は以下を参考にしてください。
https://haniwaman.com/mw-wp-form/
ファイル名を伝えたい
フォームへのファイル添付機能はどちらにも付いていますが、メールに添付されたときの挙動が異なります。
ファイル名を表示したい → Contact Form 7
Contact Form 7にファイルを添付すると、そのままのファイル名でメールに添付されて受け取ることが可能です。
test.txtというファイルを添付したら、test.txtというファイルが届きます。
ファイル名が分からなくてもいい → MW WP Form
MW WP Formにファイルを添付すると、ファイル名が変換された形でメールに添付されます。
具体的には、test.txtを添付すると、10839469275c5549a1c1427.txtのような名前となってファイルが届きます(中身は同じです)
もしどうしても修正したい場合は、以下コメントのやりとりを参考にしてください。
添付ファイル名について、どうしてもクライアントさんがユーザーがアップするファイル名を日付ファイル名に変換しないで、選択したファイルそのままの名前で添付して送信したいというご要望があります。この場合は直接プログラムの記述を変更するしか手段はないでしょうか。
↓
はい、ありません。ご察しの通りおすすめはできませんが、もし変更される場合は/mw-wp-form/form_fields/mw_form_field_file.php内の
setUploadFileName
メソッドを変更することになります。
プライバシーポリシーへリンク有無
「プライバシーポリシーを確認しました」のチェックを促すチェックボックスが必要なサイトもよくあったりします。少し考える必要が出てくるのが、「プライバシーポリシー」の箇所にだけリンクが付いているパターンです。
「プライバシーポリシー」あり → Contact Form 7
「承認確認」ボタンで追加したチェックボックスは、ショートコードで囲まれる形となるので、以下のようにa
タグを自由に付けることができるようになります。
[acceptance acceptance-174]<a href="https://">プライバシーポリシー</a>に同意する[/acceptance]
「プライバシーポリシー」なし → MW WP Form
MW WP Formのチェックボックスは、引数として値を指定する形となるので、HTMLタグを使うことができません(HTMLタグで書いてもそのまま文字として表示されます)
[mwform_checkbox name="your-check" children="プライバシーポリシーに同意する"]
なのでチェックボックスの値にリンクを付けることが簡単ではありません。
バリデーションの細かさ
フォームといえばバリデーションも大事な検討項目かもしれません。MW WP Formではとても自由度が高く各項目に対してバリデーションを指定できます。
バリデーションを指定しない → Contact Form 7
Contact Form 7は、管理画面からバリデーションの設定を触ることはできません。custom_email_confirmation_validation_filter
のフィルターフックを使うことでバリデーションを追加することは可能です。
(参考) → Custom Validation | Contact Form 7
上記の公式に掲載されているコードは、「確認用のメールが合致しているか確認させるためのバリデーションの追加」だと思われます。
バリデーションを指定したい → MW WP Form
MW WP Formは管理画面からバリデーションを指定することができます。
各項目に適応されるバリデーションを管理画面から設定したい場合は、MW WP Formを選ぶといいかと思います。
おわり
WordPressの2大お問い合わせフォームである「Contact Form 7」と「MW WP Form」の違いを大雑把にまとめました。
めっちゃ感覚的ですが、サクッとしたサイトだと「Contact Form 7」。カチッとしたサイトだと「MW WP Form」なイメージです。プラグインによって違いはあるので、WordPressでお問い合わせフォームを選ぶ上で参考にしてもらえたらと思います!