nintact
よくある詰まり

Contact Form 7 のメールが送信されない

プラグインの設定より先に、ドメインのメール設定を疑ってください。CF7 の画面で完結する問題は、実はそれほど多くありません。

考えられる原因

01

差出人(From)を、問い合わせてきた人のアドレスにしている

CF7 の既定では、送信者メールに [your-email] を入れる書き方が広まっています。これは他人のドメインを名乗ることになり、SPF も DMARC も通りません。差出人は自社のドメインのアドレスにして、返信先(Reply-To)に [your-email] を入れてください。これだけで直る例が一番多いです。

02

送信ドメインの認証(SPF / DKIM)が無い

Gmail と Yahoo! は、認証のないメールを受け取りません。レンタルサーバーの標準の送信をそのまま使っていると、ここが抜けていることがよくあります。CF7 側をどう設定しても、この条件は満たせません。

03

サーバーの送信そのものが止まっている

共有サーバーには、1時間あたりの送信数の上限や、PHP の mail() の制限があります。迷惑メールの踏み台にされた形跡があると、契約単位で送信が止められていることもあります。管理画面の送信ログを確認してください。

04

「メッセージの送信に失敗しました」は、送る前で落ちている

この文言はサーバーがメールを渡せなかったときに出ます。届かないのではなく、出ていません。SMTP プラグインを入れている場合は、その認証情報(ポート・パスワード)が期限切れになっていないかを見てください。

直し方

WordPress の中で直す

差出人を自社ドメインに直し、SMTP プラグインで認証済みの送信サービスに繋ぎ、そのサービスでドメインを認証(DNSにレコードを追加)します。正攻法ですが、プラグイン・サーバー・DNS の3か所を触ることになります。

フォームの送信先だけ差し替える

CF7 のフォームはそのまま、送信先(action)を書き換えるだけでも受け取れます。HTMLも項目も見た目も変わりません。以降のメールは認証済みの基盤から出るので、あなたのDNSもサーバーも触りません。

無料で試す

送信先の書き換えだけなら、プラグインの追加も、サーバーの設定変更も要りません。届いた問い合わせは分類され、返信の下書きまで用意されます。

<script src="https://nintact.com/embed.js"
        data-nintact="YOUR_FORM_ID" async></script>

よくある質問

SMTPプラグインを入れれば直りますか?

送信の経路は直りますが、それだけでは足りないことがあります。繋いだ先のサービスで自分のドメインを認証(SPF・DKIM のレコードを公開)しないと、受け取る側では認証のないメールのままです。

差出人を自分のアドレスにすると、誰から来たか分からなくなりませんか?

なりません。返信先(Reply-To)に問い合わせた人のアドレスを入れておけば、返信ボタンでそのままその人に返せます。一覧の表示名も、本文に名前を入れておけば分かります。

CF7 のフォームを作り直す必要はありますか?

ありません。送信先を書き換えるだけなら、いまのフォームがそのまま動きます。作り直したい場合は、コード1行で描画する形にも切り替えられます。

自分のドメインが今どういう状態か、どこで分かりますか?

到達チェックにドメインを入れると、SPF・DKIM・DMARC・MX を実際に引いて診断します。登録は不要です。