Contact Form 7の使い方|フォームとメールの設定
ブログやサイトに「お問い合わせフォーム」を置きたいとき、WordPressでよく使われるのが、プラグインの「Contact Form 7」です。このサイトのお問い合わせページも、このプラグインで作っています。
この記事では、このサイトの設定画面をもとに、フォームの作り方、メールの設定、スパム対策のつけ方をまとめました。
※Contact Form 7の公式ドキュメントと、このサイトの設定画面(バージョン6.2.3)をもとに、2026年10月時点の内容をまとめています。画面や仕様は変わることがあるので、設定前に公式の案内も確認してください。
先にポイント:フォームは「フォーム」と「メール」の2タブが基本
- 入力欄は「フォーム」タブで作る:上に並んだボタンを押すと、入力欄のタグが作れます
- 届くメールは「メール」タブで決める:入力欄を増やしたら、メールの本文にも同じ名前のタグを足します
- スパム対策は、あとから足せる:Cloudflare Turnstile、reCAPTCHA、Akismetなどの連携が用意されています
Contact Form 7でできること
Contact Form 7は、お問い合わせフォームを作って、記事や固定ページに貼れるようにするプラグインです。入力欄の種類は、テキスト、メールアドレス、URL、電話番号、数値、日付、テキストエリア、ドロップダウンメニュー、チェックボックス、ラジオボタン、承諾確認、クイズ、ファイルなどが用意されています。
フォームに入力された内容は、メールで受け取ります。外部のサービスとの連携(インテグレーション)も、管理画面から設定できます。
導入から公開までの流れ
- プラグインを追加する:管理画面の「プラグイン」→「プラグインを追加」で「Contact Form 7」を検索し、「今すぐインストール」→「有効化」を押します
- フォームを開く:左のメニューの「お問い合わせ」→「コンタクトフォーム」を開きます。最初から「コンタクトフォーム 1」というフォームが用意されています
- フォームとメールを整える:タブごとに、入力欄とメールの内容を設定して、「保存」を押します
- ショートコードを貼る:フォームの編集画面にあるショートコードをコピーして、固定ページや投稿に貼ります
ショートコードは、[contact-form-7 id="数字" title="フォーム名"]のような形をしています。このサイトでは、「お問い合わせ」という固定ページに貼っています。
編集画面の4つのタブ
フォームの編集画面には、4つのタブが並んでいます。
| タブ | 決めること |
|---|---|
| フォーム | どんな入力欄を並べるか(お名前、メールアドレス、本文など) |
| メール | 届くメールの宛先、差出人、題名、本文 |
| メッセージ | 送信後や、入力エラーのときに画面に出る文章 |
| その他の設定 | 追加の設定を書く欄(このサイトでは、何も入れていません) |
※出典:Contact Form 7公式ドキュメントと、このサイトの設定画面。
フォームのつくり方
「フォーム」タブでは、テンプレートの中に、入力欄のタグを並べていきます。公式のページでは、タグの書き方にはルールがあるので、タグを作るボタンを使うとよいと案内されています。
このサイトのフォームは、次の5つで作っています。
| 見出し | タグ | 内容 |
|---|---|---|
| お名前(必須) | [text* your-name] | 1行のテキスト欄 |
| メールアドレス(必須) | [email* your-email] | メールアドレス用の欄 |
| 題名 | [text your-subject] | 1行のテキスト欄 |
| メッセージ本文 | [textarea your-message] | 複数行のテキスト欄 |
| 送信 | [submit "送信"] | 送信ボタン |
タグの種類(textやemail)の後ろに「*」がついているものが、入力が必須の項目です。your-nameのような名前は、あとで、メールの本文に差し込むときにも使います。
メールの設定
「メール」タブでは、フォームが送信されたときに届くメールの内容を決めます。
| 項目 | 意味 | このサイトの設定 |
|---|---|---|
| 送信先 | メールの届け先 | お問い合わせを受け取るアドレス(非公開) |
| 送信元 | メールの差出人 | 「サイト名<サイトのドメインのアドレス>」 |
| 題名 | 届くメールの題名 | サイト名+フォームの「題名」 |
| 追加ヘッダー | Cc、Bcc、返信先など、追加で指定する項目 | 返信先に、入力されたメールアドレス |
| メッセージ本文 | メールの本文 | 名前、メールアドレス、題名、本文を差し込み |
題名や本文には、フォームのタグと同じ名前を[your-message]のように書くと、入力された内容が差し込まれます。これを「メールタグ」といいます。
このサイトでは、「返信先」に入力されたメールアドレスを入れています。届いたメールにそのまま返信すると、問い合わせた人に返信が届く形です。
また、「メール (2) を使用」にチェックを入れると、2つ目のメールを送れます。自動返信メールによく使われますが、このサイトでは使っていません。
※出典:Contact Form 7公式ドキュメント「Setting Up Mail」。
スパム対策の選択肢
お問い合わせフォームは、スパムの送信先になりやすいものです。Contact Form 7では、管理画面の「お問い合わせ」→「インテグレーション」から、スパム対策のサービスを連携できます。
| サービス | 特徴 | 準備するもの |
|---|---|---|
| Turnstile | Cloudflareの、CAPTCHAの代わりになるサービス。無料で、公式のページでは、特別な理由がなければこちらがすすめられています | Cloudflareで作る「サイトキー」と「シークレットキー」 |
| reCAPTCHA (v3) | Googleのサービス | サイトキーとシークレットキー |
| Akismet | フォームの送信内容を、スパムのデータベースと照らして判定するサービス | Akismetのプラグインと、APIキー |
Turnstileの設定の流れ
- キーを用意する:Cloudflareでウィジェットを作り、「サイトキー」と「シークレットキー」をコピーします。公式では、モードは「Managed」がすすめられています
- キーを入れる:「お問い合わせ」→「インテグレーション」の、Turnstileの「インテグレーションのセットアップ」を開き、2つのキーを貼って保存します
保存すると、フォームのタグを足さなくても、すべてのフォームにTurnstileが表示されます。表示の位置は、初期設定ではフォームの上です。位置を変えたいときは、フォームの中に[turnstile]というタグを置きます。
Akismetを使うときは、入力欄のタグにも設定が必要です。たとえば、メールアドレスの欄なら[email* your-email akismet:author_email]のように書きます。個人のブログは無料、会社や商用のサイトは有料です。
※キーは、サイトを守る大事な情報です。他の人に見せたり、記事に書いたりしないよう気をつけましょう。
※出典:Contact Form 7公式ドキュメント「Turnstile integration」「Spam filtering with Akismet」。
使うときの注意点
- 入力欄を足したら、メールにも足すフォームのテンプレートを変えても、メールの設定は自動では変わりません。新しい入力欄を、メールの本文にも、メールタグとして足しましょう
- 差出人は、サイトと同じドメインのアドレスに公式のページには、送信元は、サイトと同じドメインのアドレスにするよう書かれています。違うドメインだと、設定のエラーになることがあります
- 公開したら、必ず送信テストをする自分でフォームから送ってみて、メールが届くか、迷惑メールのフォルダに入っていないかを確認しましょう
- スパム対策は、早めにフォームを公開すると、スパムが届くことがあります。届いてから慌てないように、Turnstileなどの連携を、先に設定しておくと安心です
気になるギモン
フォームの入力欄を増やすには?
「フォーム」タブの上に並んだボタン(テキスト、メールアドレス、チェックボックスなど)を押すと、入力欄のタグが作れます。作ったタグをテンプレートに貼ったら、「メール」タブの本文にも、同じ名前のメールタグを足してください。
自動返信のメールは送れますか?
はい。「メール (2)」を使うと、2つ目のメールを送れます。自動返信によく使われます。1つ目のメールが送れたときだけ、送られる仕組みです。
スパム対策は、どれを選べばいいですか?
まずは、無料で、タグを足さなくても使えるTurnstileが始めやすいです。公式のページでも、特別な理由がなければTurnstileがすすめられています。Akismetは、スパムの判定に使えますが、入力欄のタグにも設定が必要です。
まとめ
Contact Form 7は、「フォーム」タブで入力欄を作り、「メール」タブで届くメールを決める、シンプルなプラグインです。入力欄を足したらメールにも足すこと、差出人をサイトと同じドメインにすることが、基本のポイントです。
公開したら、まず送信テストをして、スパム対策も早めに入れておきましょう。



