WordPressでコメントが投稿されてもメールが届かない場合の対処法

WordPressで、コメントが投稿された際に、メールを通知してほしい場合があります。

もちろん、管理画面にログインすれば、確認できるのですが、すぐに返信したいと思うこともあるのではないでしょうか。

そのような場合には、次の方法で、メールを送ることができます。

[設定] > [ディスカッション]の設定を確認する

[設定] > [ディスカッション] > [自分宛のメール通知]で、

[コメントが投稿されたとき]、[コメントがモデレーションのために保留されたとき]の2つにチェックを入れます。

[設定] > [一般設定]を確認する

[メールアドレス]の項目に、正しいメールアドレスが入力されているか確認しましょう。

[ユーザー]から管理者のメールアドレスを確認する

ユーザーの一覧画面で、管理者メールアドレスが、[一般設定]で設定されていたメールアドレスと異なっていないか確認しましょう。

管理者」でなければ、メールが届きません。

サーバーのメール機能が有効になっているか確認しましょう

WordPressの管理画面から一度ログアウトし、ログイン画面にて、「パスワードをお忘れですか?」といったリンクから、パスワードの変更を試みてみましょう。

そうすると、確認のメールが送られます。ここで問題なくメールが送れるようであれば、サーバーのメール機能には問題がないといえます。

もし、以下のようなエラーがでるようであれば、サーバーのメール機能に問題がある可能性が高いです。

mail() 関数が無効になっている可能性があります。

sendmailが有効になっているか確認しましょう

以下の3行を記述したtest.phpを作成して、サーバーにアップロードしてみましょう。そしてブラウザからアクセスすると、phpの設定状況が確認できます。

<?php
phpinfo();
?>

その後表示された画面で、sendmail_pathの項目を探してください。

多くの場合、以下のようなパスになっているでしょう。

/usr/sbin/sendmail -t -i

その後、サーバーにSSHでログインして、上記のパスに、sendmailが存在するか確認してください。

sendmailをインストールしよう

もし、sendmailが存在しなければ、以下のコマンドで、sendmailをインストールしましょう。

yum install sendmail

sendmailを起動しよう

sendmailをインストールしたら、以下のコマンドでsendmailを起動しましょう。

/etc/init.d/sendmail start

コマンドでメールを送れるか確認してみよう

SSHで接続して、以下のコマンドを入力してテストメールを送信してみましょう。メールアドレスの部分は変更してください。

echo "test" | /usr/sbin/sendmail -t -i username@domain.com

これで、テストメールが送信されれば、サーバー上でメール機能が有効になっているといえます。

これらのポイントを確認すれば、大抵の場合、Wordpressのコメントが投稿された場合に、メールを送信することが出来るようになると思います。

是非、お試しください!

コメント