ブログを始めた当初は、お問い合わせフォームのことはあまり考えていませんでした。スパムや変なメッセージが殺到するようになるまでは。
WordPressサイトにフォームを追加したことがある人なら、おそらくあなたも経験があるだろう。
フォームは訪問者に連絡を取ったり、ニュースレターに登録したり、予約を入れたりするのにとても便利です。しかし、気をつけないと、ハッカーやスパマーの侵入口にもなりかねません。
そのため、私たちに寄せられる最も一般的な質問のひとつが、「安全なお問い合わせフォームを作成するにはどうすればよいですか?🌟
私たちは、ビジネスサイトにおけるあらゆる種類のフォームをビルトインし、管理してきました。その経験から、フォームをセキュアにすることはオプションではありません。
このガイドでは、WordPressで安全なお問い合わせフォームを作成する方法をご紹介します。

以下、この投稿で取り上げる内容を要約する:
- What Do You Need to Secure WordPress Forms?
- Creating a Secure Contact Form in WordPress 🔒
- Tip 1: Securing WordPress Contact Form Email Notifications
- Tip 2: Securing WordPress Forms Against Spam and DDoS Attacks
- Enable Google reCAPTCHA in Your Forms
- Enable Custom CAPTCHA for Your WordPress Forms
- Tip 3: Restricting WordPress Forms Access to Certain Users
- Bonus Tip 💡: Keeping Your WordPress Site Secure
WordPressのフォームを保護するために必要なものは?
WordPressのお問い合わせフォームを完全にセキュアにするには、2つのことが必要です:
- 安全なWordPressお問い合わせフォームプラグイン
- 安全なWordPressホスティングサービス環境
まずはフォームプラグインから。
1.安全なお問い合わせフォームプラグインを選ぶ
セキュアお問い合わせフォームプラグインを使用すると、サイト上でフォーム入力を安全に保存することができます。また、フォームの通知を安全な方法でメール送信することもできます。
WPFormsを使用することをお勧めします。WPFormsは市場で最高のWordPressお問い合わせフォームプラグインで、600万以上のサイトで信頼され使用されています。この中には私たちも含まれています!
WPBeginnerでは、お問い合わせフォーム、ユーザーアンケート、商品登録、サイト移行リクエストフォームなど、あらゆることにWPFormsを使っています。WPFormsは柔軟性があり、初心者にやさしく、仕事をこなしてくれます。詳しくはWPFormsのレビューをご覧ください。

WordPressのフォームを保護し、スパム、ハッキング、データの盗難からサイトを保護するための強力な機能が満載です。
WPForms Liteという無料版もあります。同様に安全ですが、機能が制限されています。
2.安全なホスティングサービスの選択
適切な WordPress ホスティングサービスを選択することは、サイトとお問い合わせフォームのセキュリティにとって非常に重要です。
私たちはBluehostを使用することをお勧めします。Bluehostは世界最大級のホスティングサービスであり、WordPressのプロバイダーとして公式に推奨されています。
さらに重要なことに、WPBeginnerユーザーには、無料のドメインとSSL証明書(WordPressフォームのセキュリティを向上させるために必要です)とともに、寛大な割引を提供しています。
また、SiteGround、Hostinger、HostGatorなど、人気のあるWordPressホスティング会社を利用することもできます。
SSLとは?なぜ WordPress フォームのセキュリティに SSL が必要なのですか?
SSLはSecure Sockets Layerの略です。WordPressサイトをHTTPからHTTPS(セキュアHTTP)に切り替えます。
サイトの横に南京錠のアイコンが表示されていますが、これはSSLプロトコルを使用してデータを転送していることを示しています。

SSLは、ユーザーのブラウザーとサイト間のデータ転送を暗号化することで情報を保護します。これにより、WordPressフォームの暗号化サポートが追加され、ハッカーがデータを盗むことが難しくなります。
詳しくは、サイト用の無料SSL証明書を取得する方法の投稿をご覧ください。
それでは、WordPressで安全なお問い合わせフォームを作成する方法を見ていきましょう。
WordPressでセキュアなお問い合わせフォームを作成する 🔒 🔒 .
WordPress で安全なお問い合わせフォームを作成するのは、上記の必要条件をすでにチェックしていれば簡単です。まだの方は、WordPress にシンプルなお問い合わせフォームをすばやく追加する方法のチュートリアルをご覧ください。
それができたら、WordPress のお問い合わせフォームにセキュリティレイヤーを追加しましょう。これにより、フォームデータを安全に保ち、スパムを減らし、サイトのパフォーマンスを向上させることができます。

WordPress フォームを悪用されたり、情報を盗まれたりする最も一般的な手口は以下のとおりです。
まず、情報を「スニッフィング」することができる。情報スニッフィングとは、インターネット上を移動するデータを誰かがこっそり聞いたり、キャプチャしたりするようなものです。安全に保護されていないサイト(HTTPS暗号化されていないサイトなど)でお問い合わせフォームを送信した場合、ハッカーはネットワークを「スニッフィング」し、送信した情報を盗むことができます。
安全なWordPressホスティングサービスを使用し、サイトのSSL暗号化を有効化することで対処できます。
次は、WordPressフォームが通知メールを送信するときです。
ビジネスメールサービスはWordPressの一部ではないため、適切にメールを送信していなければ、メール内の情報は簡単に流出してしまう。
最後に、WordPressフォームはスパムメッセージやDDoS攻撃に悪用される可能性があります。カスタム WordPress ログインフォームを使用している場合、ハッカーは総当たり攻撃を使って WordPress サイトにログインすることができます。
それでは、WordPressのフォームをよりセキュアにするために、ひとつひとつ対処していきましょう。
ヒント1: WordPressお問い合わせフォームのメール通知を保護する
先に述べたように、安全でないメールはスパイされる可能性があり、安全ではありません。フォーム通知メールを扱うには2つの方法があります。
1.フォームデータをメール通知で送信しない
まず考慮したいのは、フォームデータをメールで送信しないことだ。
例えば、誰かがお問い合わせフォームを送信すると、フォームを送信したというメールアラートを受け取るだけで、フォームデータそのものを受け取るわけではありません。
WPFormsには、WordPressのデータベースにフォームデータを保存するエントリー管理システムがビルトインされています。
WordPress ダッシュボードからWPForms ” Entriesページに移動するだけで、すべてのフォーム送信を表示できます。

注意:エントリー管理機能を利用するにはWPFormsの有料版にアップグレードする必要があります。
2.安全なWordPressフォーム通知メールの送信
ユーザーによっては、フォーム通知メールの送信がビジネスに必要な場合もあります。
例えば、オンライン注文フォーム、登録フォーム、支払いフォーム、寄付フォームがある場合、ユーザーにメール通知を送る必要があるかもしれません。
そのためには、メールを安全に送信するための適切なSMTPサービスをセットアップする必要がある。
SMTPとは、Secure Mail Transfer Protocolの略。インターネット上で安全にメールを送信するための業界標準です。
Google Workspaceを使えば、プロフェッショナルなビジネスEメールアドレスを作成できます。Google Workspaceを使えば、使い慣れたGmailのインターフェースでメールの送受信ができます。

しかし、たくさんのメールを送信するのであれば、SendLayer、Brevo、Amazon SES、または信頼できるSMTPサービスプロバイダーの利用をお勧めします。
詳しくは、WordPressのメール設定を正しく行う方法のチュートリアルをご覧ください。
次に、WordPressのフォーム通知がすべて安全なメール接続を使用して送信されるように、メールサービスをWordPressに接続する必要があります。
そのためには、WP Mail SMTPプラグインをインストールして有効化する必要があります。どのSMTPメールサービスでも動作し、WordPressのメールを安全に送信できます。

詳しい手順については、WordPressでWP Mail SMTPを設定する方法をご覧ください。
ヒント 2: WordPress フォームをスパムや DDoS 攻撃から保護する
サイトのフォームは一般に公開されます。つまり、誰でもアクセスして入力することができます。フォームへのアクセスを特定のユーザーに制限する方法については次のステップで説明しますが、今回は公開フォームについて説明します。
フォームがインターネット上で誰でもアクセスできるようになると、スパマーやハッカーの標的になる可能性があります。スパマーがあなたのフォームを詐欺行為に利用しようとする一方で、ハッカーはあなたのサイトにアクセスするため、あるいはサイトをダウンさせるためにフォームを利用しようとするかもしれません。
幸いなことに、WPFormsはスパムボットには見えない非表示のアンチスパムトークンでフォームを自動的に保護します。ハニーポットのような古い方法とは異なり、このトークンはユーザーエクスペリエンスに影響を与えません。
フォームでスパム対策が有効化されていることを確認するには、「スパム対策とセキュリティ」タブに切り替えるだけです。

ここから「スパム対策を有効化」スイッチを切り替えるだけです。これであなたのフォームは完全にセキュアになります。
さらにセキュリティーを強化するために、以下のスパム対策ツールを使うこともできる:
1.フォームで Google reCAPTCHA を有効化する。
WPFormsはGooglereCAPTCHAをサポートしています。
この機能を有効化するには、管理サイドバーからWPForms ” 設定ページに移動し、CAPTCHAタブに切り替えるだけです。

ここで、reCAPTCHAオプションを選択する必要があります。
そうしたら、reCAPTCHAのバージョンを選択してください。reCAPTCHA v2オプションを選択することをお勧めします。

その後、あなたのサイトでreCAPTCHAを有効化するには、サイトキーとシークレットキーが必要です。
これを行うには、reCAPTCHAのサイトに行き、上部にある「v3 Admin Console」ボタンをクリックするだけです。

新しい画面が表示されますので、サイトのラベルを入力し、「チャレンジ(v2)」オプションを選択してください。
すると新しい設定が開きますので、そこで「私はロボットではありません」のチェックボックスを選んでください。

その後、送信ボタンをクリックして続行します。
ここで、APIキーが表示されます。

これらのキーをコピー&ペーストしてWPFormsの設定ページに貼り付けてください。変更を保存するために’設定を保存’ボタンをクリックすることを忘れないでください。
これでフォームを編集し、reCAPTCHA フィールドをフォームに追加することができます。

あなたのフォームで reCAPTCHA が有効化されたという通知が表示されます。フォームを保存してください。
すでにサイトにフォームを追加していない場合は、フォームを埋め込みたいWordPressページや投稿を編集し、コンテンツエリアにWPFormsブロックを追加するだけです。

ドロップダウンメニューからフォームを選択するだけで、WPFormsはそのフォームのプレビューを読み込みます。
投稿やページを保存し、新しいブラウザータブでそのページにアクセスすると、reCAPTCHAフィールドを使ったフォームを実際に見ることができます。

2.WordPress フォームでカスタム CAPTCHA を有効化する。
Google reCAPTCHAを使用したくない場合は、WPForms Custom Captchaアドオンで数学クイズや質問を使用することができます。
注意: Custom CaptchaアドオンにアクセスするにはWPFormsプラグインのプロバージョンが必要です。
WPForms ” Addons のページでカスタムキャプチャアドオンをインストールして有効化してください。

そうすると、アドオンの状態が「有効化」に変わります。
その後、お問い合わせフォームを編集し、フォームに「Captcha」フィールドを追加します。

初期設定では、ランダムな数学の問題が追加されます。
キャプチャー・タイプをテキストに変更することで、カスタマイザーを追加することができます。

上部にある「保存」ボタンをクリックして、フォームを保存できます。
ここから、WPFormsブロックを使って投稿やページにフォームを追加することができます。

これで、投稿やページにアクセスして、カスタムCAPTCHAの動作を確認することができます。
ヒント3: WordPressフォームへのアクセスを特定のユーザーに制限する
WordPressのフォームを保護するもう一つの方法は、ログイン中のメンバーにアクセスを制限するか、ユニークなフォームパスワードを使用することです。
WPForms には様々なフォーム権限やアクセスコントロールルールを有効化できるForm Locker アドオンが付属しています。
注意: Form Locker アドオンにアクセスするには WPForms プラグインのプロバージョンが必要です。
Form Lockerを使えば、こんなことができます:
- パスワード保護フォーム– これはユーザーがフォームを送信するためにパスワードを入力する必要があります。この追加保護により、不要なフォーム送信の数を減らすことができます。
- 特定の日付/時間が過ぎたらフォームの送信を閉じる – これは、求人応募フォームやその他の時間に制約のあるフォームに最適です。
- 総応募数を制限する– これはコンテストや景品に最適です。最大応募数に達するとWPFormsは自動的にフォームを閉じます。
- 応募は1人1回まで– 応募の重複を避けたい場合は、この設定をお勧めします。奨学金の応募やプレゼントの応募などにとても便利です。
- フォームをメンバーのみに制限– フォームを WordPress サイトのログイン中のユーザーに制限することができます。これは会員制サイトや、サポートを有料ユーザーのみに制限したいビジネスに最適です。
フォームビルダーの設定パネルからフォームロッカーの設定にアクセスできます:

詳しいチュートリアルについては、WordPress フォームをパスワードで保護する方法のステップバイステップガイドをご覧ください。
ボーナスヒント 💡:WordPressサイトを安全に保つ
WordPressフォームのセキュリティは、WordPressサイト全体のセキュリティに依存します。いくつかの簡単なステップで、WordPressサイトのセキュリティを強化することができます。
Cloudflareは、市場で最高のWordPressセキュリティプラグインです。Cloudflareにはウェブサイトファイアウォールが搭載されており、不審なアクティビティがウェブサイトに到達する前にブロックします。
より実践的なヒントについては、初心者のためのWordPressセキュリティ完全ガイドをご覧ください。
この投稿が WordPress で安全なお問い合わせフォームを作成するのにお役に立てば幸いです。WordPress フォームをパスワードで保護する方法のステップバイステップガイドやWordPress フォームの究極の使い方ガイドもご覧ください。
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Dennis Muthomi
This is a really helpful guide on securing WordPress forms!
can WPForms also detect and block temporary/disposable email addresses from being submitted in forms?
and is it possible to block the IP address of anyone trying to abuse the forms? Being able to blacklist those kinds of bad actors would be an awesome extra layer of security.
Thanks!
WPBeginner Comments
For the best ways to stop disposable email addresses, check out this guide:
https://www.wpbeginner.com/plugins/how-to-block-disposable-email-addresses-in-wordpress/
The the second method in the above guide works with WPForms.
Also, for automatic IP address blocking, you will want to use a Web Application Firewall: https://www.wpbeginner.com/plugins/best-wordpress-firewall-plugins-compared/
Dennis Muthomi
wow! thanks for the response and sharing those helpful resources.
I really appreciate you taking the time to provide those additional guides on blocking disposable email addresses and using a firewall for IP blocking.
I’ll be sure to check out those guides you linked and get those security measures implemented.
your support is awesome!
Lucky Roy
This article content is awesome and easy to understandable. This content help me a lot to understand about a contact form in a blog of any wordpress and by custom code sites. Personally I really thanks to wpbeginner members for uploading such a great content.
WPBeginner Support
Glad our guide was helpful
Admin
Jatin
Great article on securing the forms. I’m new to blogging, and noticed I already had WP forms installed after I read your article I was able to install recaptcha successfully and that helped reduce my work a lot. I used to get a lot of spam comments. Now from 30-50 comments down to 1 or 2 but legit. Thank you for sharing your knowledge with me.
WPBeginner Support
You’re welcome, glad our guide was helpful
Admin