WordPressにお問い合わせフォームを置くには、フォーム用のプラグインを使います。当社も使っている Contact Form 7 なら、プラグインを入れて有効にし、「お問い合わせ」→「コンタクトフォーム」で最初からある「コンタクトフォーム 1」を開き、「メール」タブで送信先(To)と送信元(From)を確かめて保存し、お問い合わせのページに「Contact Form 7」のブロックで差し込めば置けます(2026年10月時点の Contact Form 7 公式の説明による)。
メールが届かないときは、送信したあとにフォームの下に出る表示で切り分けます。送信完了の表示が出るのに届かないなら、WordPressは送り出しているので、迷惑メールのフォルダ、送信元のアドレス、送信ドメインの認証、受信側の設定の順に見ます。「メッセージの送信に失敗しました」と出るなら、サーバーからの送信そのものの失敗か、迷惑メール対策による判定です。前者はサーバー会社への確認か、SMTP(メールサーバーにログインして送る方式)で送るプラグインで直し、後者は迷惑メール対策の設定を見直します。
この記事では、作る手順、公開前の確かめ方、届かないときの原因の見分け方、迷惑メール対策を順に書きます。フォームに何の項目を置くかは問い合わせフォームの項目と作り方に、送信の数をGA4で数える方法はGA4で問い合わせを計測するに分けて書いています。
WordPressでフォームを作るには、プラグインを選ぶ
WordPressの標準の機能だけでは、送信された内容をメールで受け取るフォームは作れません。そのため、フォーム用のプラグイン(WordPressに機能を足す部品)を一つ入れるのが一般的です。会社のサイトのフォームなら、選ぶときに見るのは次の4点です。
- 通知のメールの送信先・送信元・本文を、自分で決められるか
- 自動返信(送った人への受付のメール)を送れるか
- 迷惑メール対策の仕組み(Akismet、reCAPTCHA など)とつなげられるか
- 更新が続いていて、使っている人が多いか(WordPress.org のプラグインのページで、最終更新日と有効インストール数を見る)
当社のサイトでは Contact Form 7 を使い、迷惑メール対策に Akismet を組み合わせています。以下の手順も Contact Form 7 を例にします。ほかのフォームのプラグインでも、送信先・送信元・届かないときの考え方は同じです。
Contact Form 7 でフォームを作って置く手順
- 管理者のアカウントでログインし、「プラグイン」→「プラグインを追加」(版によって「新規プラグインを追加」)を開きます。
- 検索欄に「Contact Form 7」と入れ、「今すぐインストール」、続けて「有効化」を押します。有効にすると、最初のフォーム「コンタクトフォーム 1」が自動で作られます。
- 左のメニューに出る「お問い合わせ」→「コンタクトフォーム」を開き、「コンタクトフォーム 1」を開きます。新しく作るなら「コンタクトフォームを追加」です。
- 「フォーム」タブで、入力欄を整えます。最初は名前・メールアドレス・題名・メッセージ本文の4つが入っています。何を必須にするかは問い合わせフォームの項目の考え方で決めます。
- 「メール」タブで、送信先・送信元・題名・追加ヘッダー・メッセージ本文を確かめます(次の表)。
- 「保存」を押します。設定に誤りがあると、保存したときに該当する欄に注意が出ます。
- 「固定ページ」の一覧からお問い合わせのページを開き、本文に「Contact Form 7」のブロックを入れて、作ったフォームを選びます。ブロックを使わないテーマや旧エディターでは、フォームの一覧に出ている
エラー: コンタクトフォームが見つかりません。
で始まるショートコード(貼り付け用の短い記号)を本文に貼ります。 - ページを保存(更新)し、公開されたページから試しに送ります(次の章)。
「メール」タブで決める4つ
届かない原因の多くは、このタブの設定にあります。公式の説明では、それぞれを To・From・Subject と呼んでいます。
| 欄 | 入れるもの | 注意 |
|---|---|---|
| 送信先(To) | 問い合わせを受ける社内のアドレス | 二人以上が読める受付用のアドレスに。辞めた人や業者のアドレスが残っていないか |
| 送信元(From) | サイトと同じドメインのアドレス | 入力した人のアドレスにしない。別のドメインだと設定エラーになる |
| 追加ヘッダー | Reply-To: [your-email] など | 返信ボタンで、入力した人に返せるようにする |
| 題名 | 一目で問い合わせと分かる題名 | 受信箱で埋もれない言葉に |
送信元の決まりは、Contact Form 7 の「メールのセットアップに関するベストプラクティス」に書かれています。From にはサイトと同じドメインのアドレスを指定し、入力した人に返信したいときは Reply-To(返信先)にその人のアドレスを入れる、というものです。同じページは、wordpress@(自社のドメイン)という実際に受け取れるアドレスを用意しておくことも勧めています。[your-email] の部分は、フォームのメールアドレスの入力欄の名前で、自社のフォームで名前を変えていればそれに合わせます。
同じタブの下にある「メール (2)」は、追加のメールのひな形で、自動返信によく使われます。公式の説明では、メール (2) は最初の「メール」が正常に送られたときにだけ送られます。自動返信に何を書き、何を書かないかは問い合わせフォームの項目と作り方の「送信のあと」の章にまとめています。
公開前と、設定を変えたあとに確かめること
フォームは、置いただけでは動いているか分かりません。次の4つを、自分のスマートフォンと会社のパソコンの両方から一通ずつ送って確かめます。本文に「動作確認です」と書いておけば、受け取った人が迷いません。
- 送信したあと、フォームの下に送信完了の表示が出るか。
- 送信先のアドレスに通知が届くか。届かなければ、迷惑メールのフォルダも見る。
- 通知で「返信」を押すと、宛先が入力した人のアドレスになるか。
- 自動返信が、入力したアドレスに迷惑メール扱いされずに届くか。入力欄には、会社のアドレスと、Gmail などの社外のアドレスの両方を入れて試す。
自動返信を社外のアドレスでも試すのは、社内のアドレスには届くのに、社外のアドレスには届かない(またはその逆)ということがあるからです。自動返信は社外の人に届くものなので、社外のアドレスでの確かめは欠かせません。
確かめるのは、フォームを作ったときだけではありません。プラグインやテーマを更新したとき、サーバーを移したとき、迷惑メール対策を入れたとき、メールの受け取り方(会社のメールのサービス)を変えたときにも、一通送ります。手順はWordPressのアップデート手順やWordPressの引っ越しにも組み込んでいます。
メールが届かないとき:まず送信後の表示で切り分ける
Contact Form 7 は、送信の結果をフォームの下に表示します。公式のFAQでは、結果ごとに枠の色が違うとされています(テーマが見た目を変えている場合や、「メッセージ」タブで文言を変えている場合は、色や文が違うことがあります)。
| 送信後の表示 | 意味 | 次に見るところ |
|---|---|---|
| 送信完了の文(緑の枠) | WordPressはメールを送り出した | 迷惑メール、送信元、認証、受信側 |
| 「メッセージの送信に失敗しました」(赤の枠) | WordPressからの送信が失敗した | 設定エラー、サーバー、SMTP |
| 「メッセージの送信に失敗しました」(オレンジの枠) | 迷惑メール対策が止めた | Akismet、reCAPTCHA などの判定 |
| 送信中のまま止まる | ほかのプラグインやテーマとの競合が多い | ほかのプラグインを止めて試す |
赤とオレンジは、表示される文が同じです。公式のFAQによると、送信の失敗と迷惑メールの判定で同じ文を出すのは、迷惑メールを送る側に判定の結果を教えないためと、誤って判定された人を迷惑メール扱いして怒らせないためです。つまり、正当な問い合わせが判定で止められても、送った人には「失敗しました」としか見えません。
送信中の表示のまま止まる場合について、公式のFAQは、ほかのプラグインやテーマとの競合を最も疑い、ほかのプラグインを止めて標準のテーマに切り替えて試すよう案内しています。会社のサイトでいきなり試すのは影響が大きいので、試験用のサイトがあればそちらで、なければ制作会社や保守の担当に相談してから行ってください。
送信完了と出るのに届かないとき
公式のFAQは、緑の表示が出たなら、メールを送るためのPHP(サーバーで動くプログラム)の処理は成功している、としています。WordPressの開発者向けの説明でも、送信の処理が成功したことは、相手が受け取ったことを意味しないとされています。WordPressの手を離れたあとで、どこかで止まっているということです。次の順に見ます。
1. 迷惑メールのフォルダと、送信先のアドレス
公式のFAQも、迷惑メールのフィルタがよくある原因だとしています。受信箱だけでなく迷惑メールのフォルダを見ます。あわせて、「メール」タブの送信先に打ち間違いがないか、辞めた人や前の業者のアドレスになっていないかを見ます。送信先が社外のままだと、問い合わせの中身が社外に届き続けることにもなります。社内のアカウントの整理と一緒に見直す場合はWordPressのユーザー権限の「辞めた人・前の業者のアカウントを整理する」の章を参考にしてください。
2. 送信元のアドレスが、サイトと同じドメインか
送信元に、入力した人のアドレス([your-email])を入れている設定があります。返信しやすくするための工夫ですが、たとえば Gmail のアドレスを名乗ったメールが自社のサーバーから出ることになり、なりすましと見なされて捨てられやすくなります。送信元はサイトと同じドメインのアドレスにし、返信先は Reply-To で指定します。
3. 送信ドメインの認証(SPF・DKIM)
SPF や DKIM は、「このドメインのメールは、このサーバーから送られた本物です」と受け取る側が確かめるための仕組みで、ドメインの設定(DNS)に書きます。Google の「メール送信者のガイドライン」では、2024年2月1日以降、Gmail のアカウントにメールを送るすべての送信者に、送信元のドメインで SPF か DKIM を設定することを求めています。フォームの通知や自動返信も、この対象のメールです。
設定されているかは、Gmail で受け取ったテストのメールから確かめられます。メールを開き、返信のアイコンの横にあるその他のアイコンから「メッセージのソースを表示」を押すと、詳しいヘッダー(メールの送り状にあたる情報)が出ます。そこに SPF や DKIM の結果が並ぶので、「PASS」以外(FAIL など)になっていれば、ドメインかサーバーの設定を見直します。DNS の設定はサーバー会社やドメインの管理会社のマニュアルに沿って行うもので、ここを触れるのが誰かは、サイトによって違います。
4. 受信側:会社のメールのサービスやサーバーの設定
サイトと同じドメインのメールを、サイトとは別のメールのサービスで受けている会社もあります。この場合、サイトのサーバーの設定によっては、同じドメインあてのメールをサーバーの中だけで配ろうとして、外のメールのサービスに出ていかないことがあります。社外のアドレスあては届くのに、自社のドメインあてだけ届かないときは、これを疑ってサーバー会社のマニュアルや窓口で確かめます。
ほかに、受信側の振り分けの設定、容量がいっぱいの受信箱、転送の設定の誤りも、届かない原因になります。社内の別のアドレスに送り先を一時的に変えて届くかを見ると、受信側の問題かどうかが分かります。
5. 届かなくても内容が残るようにしておく
Contact Form 7 は、送信された内容をどこにも保存しません(公式のFAQによる)。当社のサイトの管理画面でも、Contact Form 7 の画面に「Contact Form 7 は送信されたメッセージをどこにも保存しません。」という案内が出ます。つまり、通知のメールが届かなければ、その問い合わせはどこにも残りません。原因を探しているあいだも取りこぼさないように、同じ案内に名前が出てくる Flamingo(Contact Form 7 と同じ開発者のプラグイン)で、送信内容をサイトのデータベースに保存する方法があります。保存すると個人情報がサーバーに残るので、誰が見られるか、いつ消すかも決めておきます。考え方は問い合わせフォームの項目と作り方に書きました。
「メッセージの送信に失敗しました」と出るとき
赤の枠:送信そのものが失敗している
公式のFAQでは、赤の枠は、Contact Form 7 が WordPress の送信の仕組み(wp_mail)でメールを送ろうとして失敗したことを表します。原因として挙げられているのは、メールの設定が正しくないこと、メールサーバーが止まっている・つながらないことなどです。見る順番は次のとおりです。
- フォームの編集画面を開き、設定の誤りの注意が出ていないかを見る。出ていれば、その欄を直して保存する。
- サーバー会社に、メールの送信のエラーの記録(ログ)を見てもらう。公式のFAQも、まずホスティングの会社に相談するよう勧めています。
- サーバーからの送信がうまくいかないなら、SMTP で送る方式に切り替える。
WordPress は、標準ではサーバーの PHP の mail という仕組みでメールを送ります(WordPress の開発者向けの説明による)。SMTP で送る方式に変えると、会社のメールのアカウントや送信用のサービスにログインして、きちんとしたメールサーバーから送れます。そのためのプラグインの一つが WP Mail SMTP で、WordPress.org のページでは、無料版にテストのメールを送る機能があり、送信の記録(ログ)は有料版の機能とされています。SMTP のパスワードを WordPress に預けることになるので、管理者のアカウントは信頼できる人だけに絞っておきます。
オレンジの枠:迷惑メール対策が止めている
公式のFAQでは、オレンジの枠は迷惑メールの印で、Akismet、reCAPTCHA、拒否する語句の一覧などの対策のどれかが、その送信を疑わしいと判定したことを表します。自分のテストの送信がオレンジで止まるなら、正当な問い合わせも同じように止まっているおそれがあります。どの仕組みが止めたかを調べるために、公式のFAQはスパムの記録を残す機能を使うよう案内しています。判定を緩めるか、仕組みを替えるかは、次の章を見て決めます。
迷惑メール対策:入れるものと、入れたあとに確かめること
フォームを置くと、宣伝や意味のない文字列の送信が届くようになります。Contact Form 7 とつなげられる主な仕組みは次の3つです(いずれも Contact Form 7 公式の説明による)。
| 仕組み | つなぎ方 | 知っておくこと |
|---|---|---|
| Akismet | Akismet を有効にし、フォームの欄に akismet:author などを足す | APIキーが要る。会社のサイトは有料のプラン |
| reCAPTCHA v3(Google) | 「お問い合わせ」→「インテグレーション」にキーを入れる | v2 のキーは使えない。Google の方針変更で費用が増える可能性 |
| Turnstile(Cloudflare) | 「お問い合わせ」→「インテグレーション」にキーを入れる | Cloudflare でウィジェットを作ってキーを取る |
Akismet は、Contact Form 7 の説明では WordPress に同梱されているプラグインで、使うには API キーが要ります。WordPress.org の Akismet のページでは、個人のブログは無料、事業や商用のサイトは有料のプランとされています。Contact Form 7 では、名前の欄に akismet:author、メールアドレスの欄に akismet:author_email のような印を足すと、そのフォームで Akismet の判定が働きます。
reCAPTCHA は、Contact Form 7 の 5.1 以降は v3(画像を選ばせるような操作を求めない版)を使います。Contact Form 7 の説明には、Google が reCAPTCHA の利用者を reCAPTCHA Enterprise に移す方針を示しており、多くの人にとって費用が増えることになる、という注意も書かれています。これから入れるなら、その点も含めて選びます。reCAPTCHA を入れたときの表示やプライバシーポリシーへの書き方は問い合わせフォームの項目と作り方の「迷惑送信への備え」に書きました。
どれを入れても、入れたあとに一通送って届くかを確かめます。判定で止められた送信は、送った人には「失敗しました」とだけ表示され、こちらには何も届きません。迷惑メールが減ったのか、問い合わせそのものが減ったのかは、通知のメールの数だけでは区別できないので、対策を入れた日と設定を変えた日を記録しておきます。
今日、自社のフォームで確かめること
- 自分のスマートフォンからフォームを一通送り、送信後の表示の色と文を見る。
- 通知が送信先に届いたか、迷惑メールのフォルダに入っていないかを見る。
- 「メール」タブの送信先に、辞めた人や業者のアドレスが残っていないかを見る。
- 送信元がサイトと同じドメインのアドレスか、返信先が Reply-To で入力した人になっているかを見る。
- フォームのメールアドレスの欄に Gmail のアドレスを入れて送り、届いた自動返信の「メッセージのソースを表示」で SPF と DKIM の結果を見る。
5つとも問題がなければ、そのフォームは今のところ放っておいてかまいません。次に見直すのは、プラグインの更新やサーバーの移転など、仕組みが変わったときです。
届くようになったら、送信を数える
フォームが動くようになったら、送信の数を GA4(Google アナリティクス 4。Google の無料のアクセス解析)で数えられるようにしておきます。当社の GA4 でも、フォームの送信にあたる推奨のイベント generate_lead が記録されていますが、それが実際の問い合わせかテストの送信かは、GA4 のデータだけでは区別できません。数え方と、何を数えているのかの注意はGA4で問い合わせを計測するに書いています。件数そのものは、電話も含めて受付の記録で数えます。記録の形は問い合わせの記録シートにあります。
フォームが届くようになっても問い合わせが増えない場合は、フォームの手前、つまりページが読まれているか、選ばれているかの問題です。見る順番はホームページから問い合わせを増やす方法にまとめています。
フォームの先まで任せたいとき
フォームが届かない期間は、気づくまで誰にも分かりません。当社は、ホームページの運営に加わり、フォームが届くかどうかの確かめから、問い合わせが来るまでの数字を見るところまでを引き受けています。届かない原因がサーバーなのかドメインなのか切り分けられない、何から直せばよいか判断したい、という段階からでも、相談するからお知らせください。
参考にした公式の説明
- Contact Form 7「はじめに」
- Contact Form 7「メールのセットアップ」
- Contact Form 7「メールのセットアップに関するベストプラクティス」
- Contact Form 7 FAQ(緑の表示なのにメールが届かない)
- Contact Form 7 FAQ(赤の枠のエラー)
- Contact Form 7 FAQ(オレンジの枠)
- Contact Form 7 FAQ(送信の失敗と迷惑メールで同じ文を出す理由)
- Contact Form 7 FAQ(送信中のまま止まる)
- Contact Form 7 FAQ(送信内容は保存されるか)
- Contact Form 7「Akismet によるスパムフィルタリング」、「reCAPTCHA」、「Cloudflare Turnstile インテグレーション」
- WordPress.org「Akismet Anti-spam」、「WP Mail SMTP」
- wp_mail()(WordPress 開発者リファレンス)
- Google Workspace 管理者ヘルプ「メール送信者のガイドライン」
- Gmail ヘルプ(メールのヘッダーを確認する手順)
いずれも2026年10月8日に内容を確かめました。プラグインの画面の表示名は、版によって変わることがあります。