WordPressプラグイン「Contact Form 7」を設置し、テスト送信したら、送信エラーが発生しました。今回は私が試した方法をすべて紹介し、エラーの原因と解決した方法を紹介します。サーバ側の設定についてはエックスサーバーの場合の紹介です。
私の場合のContact Form 7で送信できない原因は「reCAPTCHA」でした
「reCAPTCHA」がv2のままになっていたのが原因でした。v3に変更したら送信できるようになりました。
CAPTCHAの再生成

- WordPressのダッシュボードの①「お問い合わせ」をクリックします。
- ②「インテグレーション」をクリックします。
- ③「キーの削除」をクリックします。
- ④「CAPTCHA」の下のURLをクリックします。

「Admin Console」をクリックします。

「+」(作成)をクリックします。


- ①「ラベル」を入力します。わかりやすいラベルがベター。日本語で大丈夫です。
- ② 「reCAPTCHAタイプ」を「reCAPTCHA v3」にします。
- ③「ドメイン」を入力します。
- ④「reCAPTCHA利用規約に同意する」にチェックを入れます。
- ⑤「アラートをオーナーに送信する」はそのままでOKです。
- ⑥「送信」をクリックします。

サイトキーとシークレットキーが作成されました。

先ほどのWordPressのダッシュボードの「お問い合わせ」に戻り、インテグレーションをクリックし、サイトキーとシークレットキーを入力して、設定します。(画面は既にキーを入力した状態です。)
以上で設定は完了です。これで正常に動作しなかったら、以下の方法を試してみてください。
Contact Form 7で送信できない時の対処法:「Contact Form 7 Controls」のインストール
プラグインの取得
WordPressのダッシュボードの「プラグイン」>「新規追加」をクリックします。

「Contact Form 7 Controls」と検索し、「Contact Form 7 Controls」をインストールし、有効化します。(画像は既に有効化されています。)
Contact Form 7のカスタマイズ設定
WordPressのダッシュボードの「お問い合わせ」>コンタクトフォームで該当のコンタクトフォームをクリックします。

「Customize」タブが追加されているので、「Customize」タブをクリックします。

「Disable AJAX for this form」にチェックを入れ、画面下の「保存」をクリックします 。
Contact Form 7で送信できない時の対処法:「WP Mail SMTP」のインストール
プラグインの追加
WordPressのダッシュボードの「プラグイン」>「新規追加」をクリックします。

設定
「WP Mail SMTP」と検索し、「WP Mail SMTP by WPForms」をインストールし、有効化します。(画像は既に有効化されています。)

WordPressのダッシュボードの「設定」>「WP Mail SMTP」をクリックします。

送信元アドレスにコンタクトフォームで使うアドレスを記載します。
送信者名に送信者の名前を記載します。

メーラーは「Other SMTP」を選択します。
返信先は「送信元アドレスを返信先 (return-path) として設定」にチェックを入れます。
SMTPホストはホスト名を指定します。エックスサーバーの場合は、サーバ接続用ホストと同じです。

暗号化はSSLを選択します。
SMTPポートは465を指定します。
Auto TLSはONにします。
認証はONにします。

SMTP Usernameはユーザ名を指定します。送信元アドレスと同じになります。
SMTP Passwordはメールのパスワードを書きます。
設定が完了したら「Save Settings」をクリックします。
最後に[marker]「wp-config.php」[/marker]に以下の記述を追加します。
define( 'WPMS_ON', true );
define( 'WPMS_SMTP_PASS', 'your_password' );
your_passwordに、SMTP Passwordを書きます。
Contact Form 7で送信できない時の対処法: レンタルサーバで独自ドメインのメールアドレスを取得して、 Contact Form 7に設定
エックスサーバーで独自ドメインのメールアドレスを取得&転送設定
エックスサーバーのサーバーパネルへログインします。

「メール」の「メールアカウント設定」をクリックします。

メールアドレスを作成したいドメイン名の「選択する」をクリックします。

「メールアカウント追加」タブをクリックし、必要事項を入力します。
- メールアカウント
- パスワード
- メーラーの容量
- 管理用のこのメールアドレスの内容を書いたコメント

内容を確認して、「追加する」をクリックします。

メールソフト設定タブをクリックし、メールソフトの設定に必要な内容を確認し、メモしておきます。
エックスサーバーでの独自ドメインのメールの転送設定

「メールアカウント一覧」の「転送」をクリックします。

転送先アドレスを入力し、「追加する」をクリックします。
独自ドメインのメールアドレスをGmailでメールの送受信する設定

Gmailを開き、右上の歯車アイコン(設定)をクリックし、表示されるメニューの「設定」をクリックします。

「アカウントとインポート」タブをクリックし、他のアカウントでメールを確認:「メールアカウントを追加する」をクリックします。

追加するメールアドレスとして、先程作成した独自ドメインのメールアドレスを入力して、「次へ」をクリックします。

「他のアカウントからメールを読み込む(POP3)」を選択し、「次へ」をクリックします。

先ほどメモしておいた、ユーザー名、パスワードPOPサーバーを入力します。ポートは995を設定します。チェック項目は「メールの取得にセキュリティで保護された接続(SSL)を使用する。」にチェックを入れます。後の項目は任意で。「アカウントを追加」をクリックします。

「はい。xx@xxx.xxとしてメールを送信できるようにします。」を選択して、「次へ」をクリックします。

名前(メールアドレスの表示名)を入力し、「次のステップ」をクリックします。

SMTPサーバーに、先ほどメモしたSMTPサーバーを記述します。ポートは「465」を指定します。ユーザー名とパスワードは、メールアドレスとそのパスワードを入浴します。「SSLを使用したセキュリティで保護された接続」を選択します。「アカウントを追加」をクリックします。

設定したメールアドレスに確認コードが送られてくるので、確認コードをコピー&ペーストして、「確認」をクリックします。
これでGmailでのメールの送受信設定は完了です。
メールの取りこぼし対策もしよう!

メールの取りこぼし対策として、フォームの近くに「別の連絡窓口」を掲載しておくことが有効です。メールアドレスの情報などを書いておくと良いと思います。
参考サイト
