「フォームから問い合わせが来なくなった」というとき、実は二つの違う状態が混ざっています。送信ボタンを押すとエラーになる「送れない」状態と、画面では送信できたように見えるのにメールが来ない「届かない」状態です。原因の場所がまったく違うので、最初にどちらなのかを確かめます。ここではWordPressでよく使われるContact Form 7を例にします。
■ 自分で一度送ってみる
フォームに自分の連絡先を入れて、実際に送信してみます。受け取り用のアドレスとは別の、たとえば個人のメールアドレスを入力すると、自動返信が届くかどうかも同時に見られます。送信したあと、フォームの下に出る文を控えておいてください。初期設定のままなら、次のどれかが出ます。
・「ありがとうございます。メッセージは送信されました。」
フォームはメールを送り出しています。来ないなら、途中か受け取る側で止まっています。
・「メッセージの送信に失敗しました。後でまたお試しください。」
サーバーがメールを送り出せなかった状態です。初期設定では、スパム(迷惑な自動送信)と判定されたときにも同じ文が出ます。
・「入力内容に問題があります。確認して再度お試しください。」
入力欄のチェックで止まっています。必須の項目や、メールアドレスの形などを見直します。
・ボタンを押しても何も出ない、くるくる回る印が止まらない
他のプラグインやテーマとぶつかっているときに出やすい症状です。ブラウザーを変えて試すと、手がかりになることがあります。
■ 「送信されました」と出るのに届かないとき
まず迷惑メールのフォルダーを確認します。次に、管理画面の「お問い合わせ」からフォームを開き、「メール」のタブを見ます。
確認するのは送信先と送信元の二つです。送信先が退職した方のアドレスや、もう使っていないアドレスのままになっていることがあります。送信元には、サイトと同じドメイン(アドレスの@より後ろ)のメールアドレスを入れるのが基本です。ここがGmailなど外部のアドレスになっていると、受け取る側でなりすましと疑われ、迷惑メールに入ったり、受け取りを拒まれたりすることがあります。Googleの「メール送信者のガイドライン」でも、GmailのFrom(送信元)をなりすまさないよう求めています。設定画面に「サイトのドメインに属していないメールアドレスが送信元に設定されています。」と出ていたら、この状態です。
お客様のアドレスに返信したい場合は、送信元に入れるのではなく、「追加ヘッダー」に Reply-To(返信先)として入れる方法を使います。どの書き方になるかはフォームの作りで変わるので、分からなければ設定を変えずに相談してください。
■ 「送信に失敗しました」と出るとき
フォームの設定より、サーバー側の事情であることが多くなります。
・サーバーのメール送信機能に制限がかかっていないか(サーバー会社に問い合わせると分かります)
・最近サーバーの引っ越しやドメインの変更をしていないか
・reCAPTCHA(自動送信を防ぐ仕組み)の鍵を、サイトのアドレスが変わったあともそのまま使っていないか
サーバーの送信機能そのものに頼らず、メールサーバーにきちんとログインして送る「SMTP」という方法に切り替えると直ることもあります。ただ、メールのパスワードを扱う作業になるので、慣れていなければ無理に進めないでください。
■ 届かなかった問い合わせを取りこぼさないために
Contact Form 7は、送られた内容をサイトの中に保存しません。メールが届かなければ、その問い合わせは手元に何も残りません。もともとContact Form 7のために作られた「Flamingo」というプラグインを入れておくと、送信された内容が管理画面に保存されるので、原因を探している間の取りこぼしを防げます。
フォームの設定画面の確認までは、表示を見るだけなので安全です。送信元を変える、SMTPを設定する、DNS(ドメインの住所録のような設定)を触る、といった段階に入る前に、今の設定を画面ごと控えておき、迷ったらそこで止めてください。
ココナラで「お問い合わせフォームの不具合を直します」というサービスを出しています。上で試した結果と、画面に出た文をそのまま送っていただければ、原因の見当と金額をお伝えしてから作業します。