今回はWordPressで自分のWEBサイトにお問い合わせフォームを設置する方法と、フォームを送信した際にメールが届かない場合の対処方法について解説します。
「お問い合わせフォームを設置したのにメールが届かない」という問題はVPS環境では特によく発生します。
プラグインContact Form 7の導入
お問い合わせフォームを設置するための方法はいくつか存在しますが、今回は”Contact Form 7″を使用する方法を解説します。
まずはWordPress管理画面の左側のメニューでプラグインの追加を選択します。
検索欄に”Contact Form 7″と入力したら、”今すぐインストール”を選択し有効化します。

有効化できましたら、お問い合わせフォームを置きたい場所で以下の”Contact Form 7″を選択すると設置されます。

もしくはWordPress管理画面の左側メニューに”お問い合わせという項目”がありますのでそこをクリックし、”コンタクトフォーム 1″を押すと以下のようなコードがあるかと思いますので、そのコードをフォームを設置したい場所にコピペするという方法もあります。
[contact-form-7 id="XXXXXX" title="コンタクトフォーム 1"]
設置できましたらプレビューなどで一度確認し、入力欄が表示されているか確認しましょう。
ただし、今テストメールを送信しても以下のようになり、送信できないかと思います。

これはNginxを使ったVPS環境では、メールの送信機能(SMTP)が未設定である場合が多いからです。
したがって次にSMTPの設定を行います。
プラグインWP Mail SMTPの導入
再度、WordPress管理画面左側のメニューからプラグインの追加をします。
検索欄に”WP Mail SMTP”と入力しインストール、有効化します。

有効化するとメーラーを選択する画面が表示されるかと思います。(表示されない場合はWordPress管理画面の左側のメニューから”WP Mail SMTP”を選択して下のほうにスクロールします。)
今回の例では”その他のSMTP”を選択しています。

すると以下のような入力欄が出てくるかと思います。

まずはこの入力欄の一番下の項目”SMTPパスワード”を把握する必要がありますが、今回はGmailを使用する場合を解説します。
Gmailを利用する場合、Googleアカウントのパスワードとは別に”アプリパスワード”という16桁のパスワードを取得する必要があります。
アプリパスワードの取得
まずは使用するブラウザでGoogleアカウントにログインして、2段階認証がオンになっているか確認します。(アプリパスワードの取得には設定が必要です。)
2段階認証のページを下のほうにスクロールすると”アプリパスワード”という項目があるかと思います。

もし見つからない場合は以下のURLへ直接アクセスしてみて表示されるか確認してください。
https://myaccount.google.com/apppasswords
それでも表示されない場合はGoogleアカウントに制限がかかっているか会社ドメインや学校アカウントなどのGoogle Workspaceアカウントを使用している可能性が考えられます。(Google Workspaceアカウントの場合、管理者が制限を設けていることがあります。)
アプリパスワードを取得できましたら、SMTPの設定に戻ります。
SMTP設定
以下の画面で先ほど取得したアプリパスワード等を入力します。

画像にも記載はありますが、入力内容をまとめておきます。
SMTPホスト:smtp.gmail.com
暗号化:TLS
SMTPポート:587
認証:オン
SMTPユーザー名:メールアドレス
SMTPパスワード:アプリパスワード(16桁)
入力できましたら設定を保存し、お問い合わせフォームが送信できるかどうか確認しましょう。
送信したメールは基本的にWordPressに設定している管理者メールアドレスに届きますので受信についても確認しておくとよいと思います。
まとめ
今回はお問い合わせフォームの設置、そして設置に伴うメール送信機能の有効化の方法についての解説でした。
Googleのアプリパスワードについて、よくGoogleアカウントのパスワードと誤解されることがあるようですので注意しましょう。
サイトを運営していく上でお問い合わせフォームは便利ですので、是非ご活用していただければと思います。