WordPressでお問い合わせフォームを作るとき、
「Contact Form 7を使うべきか」
「自分でフォームを作るべきか」
で迷うことがあります。
どちらでもお問い合わせフォームは作れますが、実際には目的やサイトの規模によって向いている方法が違います。
今回は、Contact Form 7と自作フォームの違いについて紹介します。
Contact Form 7とは?
Contact Form 7は、WordPressでお問い合わせフォームを作成できる定番プラグインです。
管理画面からフォームの項目を設定でき、
お名前
メールアドレス
電話番号
お問い合わせ内容
チェックボックス
選択項目
など、一般的なお問い合わせフォームで必要な項目を作ることができます。
送信された内容を指定したメールアドレスへ送信するところまで、比較的簡単に設定できます。
WordPressでフォームを作るなら、まず候補に入る方法だと思います。
自作フォームとは?
自作フォームは、プラグインに頼らず自分でお問い合わせフォームの仕組みを作る方法です。
見た目だけではなく、
入力 → 内容確認 → 送信 → メール送信
といった処理まで自分で実装します。
自由度は非常に高いですが、その分、自分で考えなければならない部分も増えます。
Contact Form 7のメリット
一番大きなメリットは、実装が早いことです。
お問い合わせフォームに必要な基本機能がすでに用意されているため、ゼロから処理を作る必要がありません。
特に一般的な企業サイトであれば、
「名前・メールアドレス・電話番号・お問い合わせ内容」
くらいのフォームで十分なケースが多いため、Contact Form 7で問題なく対応できます。
さらに、WordPress管理画面からフォーム内容を変更できるのもメリットです。
後から項目を追加したい場合にも対応しやすくなります。
Contact Form 7のデメリット
Contact Form 7は便利ですが、完全に自由というわけではありません。
複雑な条件分岐や特殊な入力フローなどを作ろうとすると、設定が複雑になることがあります。
また、プラグインなのでWordPress本体やPHPのアップデートなどによって、不具合が発生する可能性もゼロではありません。
そのため、
「プラグインを入れれば何もしなくていい」
というわけではなく、定期的なアップデートや動作確認は必要です。
自作フォームのメリット
自作フォームの最大のメリットは、自由度の高さです。
例えば、
入力内容によって次の質問を変える
独自の確認画面を作る
特殊なバリデーションを行う
外部システムと連携する
独自のデータベースへ保存する
といった処理も設計次第で実装できます。
プラグインの仕様に合わせる必要がないので、そのサイト専用のフォームを作ることができます。
自作フォームのデメリット
一方で、自作フォームは想像以上に考えることが多いです。
フォームは単純に入力内容をメールで送ればいいわけではありません。
例えば、
入力チェック
必須項目の判定
不正なデータへの対策
スパム対策
メール送信処理
エラー発生時の処理
二重送信対策
個人情報の取り扱い
などを考える必要があります。
特にお問い合わせフォームは外部から入力データを受け取る機能なので、セキュリティ面を適当に作るべきではありません。
自由度が高い代わりに、実装する側の責任も大きくなるということです。
結局どちらを使えばいい?
一般的なWordPressサイトであれば、基本的にはContact Form 7で十分だと思います。
例えば、
コーポレートサイト
店舗サイト
個人事業主のホームページ
サービスサイト
などにある一般的なお問い合わせフォームであれば、自作するメリットはそれほど大きくありません。
すでに安定して使われている仕組みがあるのであれば、それを使ったほうが制作時間も短くできます。
一方で、
特殊な入力フローが必要
複雑な条件分岐がある
外部サービスとの独自連携が必要
フォーム自体がサービスの主要機能
といったケースでは、自作フォームを検討する価値があります。
「自作できるから自作する」は少し違う
Web制作をしていると、自分で実装できる機能は自分で作りたくなることがあります。
ただ、実務では
「作れるかどうか」ではなく「自作する必要があるかどうか」
で判断したほうがいいと思います。
一般的なお問い合わせフォームを一から作るために何時間も使うのであれば、その時間をデザインやコンテンツ、SEO、表示速度などに使ったほうがサイト全体の品質が上がることもあります。
既存のツールで十分なら、無理に自作する必要はありません。
まとめ
Contact Form 7と自作フォームには、それぞれメリットがあります。
Contact Form 7
導入が簡単
制作時間を短縮できる
一般的なお問い合わせフォームには十分
WordPress管理画面から変更しやすい
自作フォーム
自由度が高い
独自の処理を実装できる
特殊なフォームに対応しやすい
その分、実装やセキュリティ管理の負担が大きい
通常のWordPressサイトであれば、まずはContact Form 7を選び、Contact Form 7では対応しにくい要件が出てきたときに自作を検討する、という考え方が現実的です。
大切なのは「どちらが優れているか」ではなく、そのサイトに必要な機能に対して、どちらが適しているかを判断することだと思います。