エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


WP Mail SMTP、WP SMTP、Easy WP SMTPでWordPressのメールのスパム判定を回避

      2017/06/04

WordPressから送信したメールがスパム判定されないようにする方法

 

WordPressから送信したメールがスパム判定される理由

 
WordPressのメール送信処理は、PHPの mail()関数を利用しています。
この mail関数は、mb_send_mail関数と同じく、最終的には WordPressがインストールされているサーバに設定されている sendmailを通してメールを送信します。
 
メールを送信するこの sendmailの設定がスパム対策も含めて十分な設定がなされていない場合、そのサーバから送信されたメールはすべてスパムとして判定される可能性が出てきます。
 
 
ちなみに「WordPressから送信したメール」という表現をしていますが、WordPressのシステムから送信するメールだけではなく、Contact Form 7、MW WP Formといったメールフォームのプラグインから送信されるメールも同じです。

Contact Form 7、MW WP Formのプラグインに関する解説は「Contact Form 7使い方詳細解説・WordPressメールフォーム」「WordPressの確認画面付フォーム MW WP Formの使い方詳細解説」にそれぞれ記事を書いています。
 
また、自作でメール送信フォームを作る場合に必要な関数の解説については「WordPressのメールフォームはwp_mail()関数でメール送信。スパム対策も」に記事を書いていますので、参考にしてください。
 
 

スパム判定されないための解決方法

 
20150603_web_01
 
メールの送信の処理をイメージにまとめたものが上記のものになります。
この解説は、「Phpmailerでスパム回避!Gmail等のSMTPを経由するPHPのメールフォーム解説」でも同じ画像を使って解説しています。
 
1.は、mail関数や、mb_send_mail関数を使って送信する場合です。
PHPでメールのヘッダ、送信先、タイトル、本文などを編集し、mb_send_mail関数を使って、sendmailにメールを送信してもらいます。
これが WordPressのデフォルトでメールを送信する場合の処理です。
 
 
2.は、この記事で解説する外部の SMTPサーバを利用して送信する場合です。
PHPでメールのヘッダや本文などを編集するところまでは同じですが、同じサーバ内の sendmailに渡すのではなく、外部の SMTPサーバに接続し、そこからメールを送信してもらう方法です。
 
PHPのオリジナルのプログラムを作成する場合は、先に紹介した記事のように Phpmailerなどのライブラリを利用することになりますが、WordPressの場合はこの記事で紹介する WP Mail SMTP、WP SMTP、Easy WP SMTPなどのプラグインをインストールすることで外部の SMTPサーバを通して送信できるようになります。
 
 
なんだか難しそうですが、パソコンの Outlookなどのメールソフトを使って SMTPサーバに接続してメールを送信している処理を、WordPressで行えるようにしている、ということになります。
この方法を使ってもスパム判定される場合は、Outlookを使って送信してもスパム判定されてしまう SMTPサーバだということになります。
 
 

スパム判定されないプラグインWP Mail SMTP、WP SMTP、Easy WP SMTP

 
WordPressから送信したメールがスパム判定されないようにするため、外部の SMTPサーバを経由してメールを送信する設定をしてくれるプラグインには、WP Mail SMTP、WP SMTP、Easy WP SMTPなどがあります。
 
 プラグイン名 ダウンロード数
 WP Mail SMTP  1,115,000
 Easy WP SMTP   215,000
 WP SMTP      150,000

 
同様のプラグインは他にもありますが、機能は似たり寄ったりですのでどれを使っても問題ありません。
 
ただ、気分的にはダウンロード数が多い方が安心できるんじゃないかなぁ、ということで、ここでは「WP Mail SMTP」をメインに解説します。
ダウンロード数は 2015年07月初旬の数値です。
 
 
なぜ WP Mail SMTPが選ばれているか。
まぁ、実際に比べてみると分かりますが、WP Mail SMTPは日本語化されていたり、説明文があったりと、当たり前のことが当たり前にあることが選ばれている理由なんでしょうね。
自分で何か作るときは肝に銘じる必要があるところですねぇ...
 
 


 

WP Mail SMTPの解説

 

WP Mail SMTPのインストール方法

 
WordPressのプラグインのインストール方法は、「WordPressプラグインの3つのインストール方法解説」に記事を書いていますので、そちらを参考にしてください。
 
 

WP Mail SMTPの設定方法

 
WP Mail SMTPをインストールすると「設定」-「メール」というメニューが追加されます。
「メール」をクリックすると、上記の WP Mail SMTPの設定画面に遷移します。
 
メニューの名前からすると、「SMTPの設定をするプラグイン」と言うより、「WordPressのメール全般の設定をするプラグインです」と言うメッセージなのでしょう。
機能的にもそのようになっていますね。
 
 

WP Mail SMTPのメール詳細設定

 
20150708_wp_01
 

From Email

送信元の FROMに設定されるアドレスを指定します。
指定がない場合は、デフォルトのメールアドレス(WordPressをインストールするときに設定したメールアドレス)が使用されます。
 

From Name

送信元の FROMに設定される名前を指定します。
指定がない場合は、「WordPress」が使用されます。
 

メーラー

このプラグイン「WP Mail SMTP」を使う理由は「SMTP経由でメールを送信すること」だと思いますので、「WordPressの全てのメールをSMTP経由で送信する。」の方を選択します。
 
ただ、SMTP送信をせず「From Email」「From Name」の値だけを設定したい、という場合は「PHP mail() 関数を使用してメールを送信する。」を選択します。
 

Return Path

Return Pathを設定する場合はチェックを入れます。
基本的にはチェックを入れます。チェックを入れないとスパムメール扱いされる可能性が高まります。
Return Pathは、メールヘッダー情報の一つで、正常にメールが送信できなかった場合やメールソフトで「返信」を押した際に送り先として設定されるメールアドレスのことです。
RFC2822(詳細は RFC2821)に定義されています。
 
 

WP Mail SMTPの SMTP設定

 
20150708_wp_02
 
これ以降の設定は、先ほどの「メーラー」で「WordPressの全てのメールをSMTP経由で送信する。」を選択した場合に利用されます。
ここで設定する内容は、プロバイダやレンタルサーバなど、自分で契約しているメールサーバのサーバ情報を設定します。
Gmailを利用することもできますが、Gmailを利用する場合は Gmailの設定を変更する必要がありますので、「WordPressプラグインの3つのインストール方法解説・Gmailのパスワードの設定について」を参照してください。
 
 

SMTP Host

SMTP Hostを指定します。
Gmailの場合は「smtp.gmail.com」になります。
 

SMTP Port

SMTP Portを指定します。
一般的には 587です。Gmailの場合は 465です。
 

Encryption

暗号化の方法を指定します。
一般的には「SSLを使用する。」を指定します。
Gmailの場合は「SSLを使用する。」「TLSを使用する。」でも動きます。
 

Authentication

SMTP認証を設定するか、否かを指定します。
最近はプロバイダやレンタルサーバも SMTP認証を使用していますので、「はい: SMTP認証を使用します。」である方が大半です。Gmailも同様です。
 

Username

契約しているメールのアカウントを設定します。
プロバイダやレンタルサーバによっては、メールアドレス全体がアカウントの場合、@の前までがアカウントの場合、と違いがありますので、実際にメールソフトに設定するものと同じように調整してみてください。
Gmailの場合は、メールアドレス全体です。
 

Password

上記の設定したユーザのパスワードを設定します。
 
 
ここまでそれぞれ設定したら「変更を保存」をクリックして保存します。
これで設定は終了です。
 
 

テストメールの送信

 
20150708_wp_03
 
設定した内容が正しいかどうかの確認をする処理です。
 
テストメールを送信するメールアドレスを入力し「テストメールを送信する」をクリックしてください。
 
無事にメールが送信されて来たら正しく設定ができているということですので、安心して使えますね。
 
 

PHP5.6以上(7.0系含む)の場合に発生する ピア証明書検証エラーの対処方法

 
設定が間違っていなくても、サーバによってはメール送信がエラーになり、送信できない場合があります。
PHPが 5.6以上(7.0系含む)の場合、サーバによってはピア証明書の検証エラー(OPEN SSLの認証エラー)となる場合があります。
 
そのときの対処方法を下記の記事にまとめましたのでご確認ください。
WP Mail SMTPはPHP5.6、7.0系ではメール送信時にエラーが発生。その対処方法。
SMTP Mailerでスパム判定回避。WP Mail SMTPで発生する送信エラーも対応
 
 

Easy WP SMTPの解説

 

Easy WP SMTPと WP Mail SMTPの違い

 
Easy WP SMTPをインストールすると、「設定」-「Easy WP SMTP」で、Easy WP SMTPの設定画面に遷移します。
 
20150708_wp_04
 
設定する内容は「WP Mail SMTP」で説明した内容とほぼ変わりません。
 
違いは、「WP Mail SMTP」にはプラグインが有効化になっていても SMTPサーバ経由でメールを送信するか否かを選択する機能、Return Pathを設定する機能がありますが、Easy WP SMTPにはそれがない、と言った程度です。
 
 
ちなみに、画面一番上にある「使い始める際には説明書を読みに来てください」と書かれている箇所のリンク先は下記になります。
 https://wp-ecommerce.net/easy-wordpress-smtp-send-emails-from-your-wordpress-site-using-a-smtp-server-2197
 
英語なので読んでませんが...
 
 

WP SMTPの解説

 

WP SMTPと WP Mail SMTPの違い

 
WP SMTPをインストールすると、「設定」-「WP SMTP」で、WP SMTPの設定画面に遷移します。
 
20150708_wp_05
 
WP SMTPと WP Mail SMTPの違いとタイトルに書きましたが、WP SMTPと Easy WP SMTPがほぼ同じです。
この SMTP系のプラグインは一度設定すればおおよそ変更することはありませんのでいいのかもしれませんが、WP SMTPは、各項目の説明すらありませんので、積極的には使いにくいですね。

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

WP Reviewを使ってWordPressのレビューサイトを構築

レビューサイトを構築するプラグインです。複数の評価者による評価点投稿やページごとに配色を変更する機能、機能満載なウィジェットなどレビューサイト構築に最適です。

カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集

カスタムタクソノミーに属するターム(カテゴリ)の一覧を wp_list_categories()関数+ショートコードでウィジェットに編集するサンプルプログラムです。

BackWPupでバックアップ・データベース保存の自動設定例

BackWPupその8。DBを毎日1回バックアップする具体的事例での説明です。

技術ブログの悲劇。複数ブログをWordPressに引越して分かったこと

ブログによってユーザ層が違う。ユーザ層が違えば検索エンジンやブラウザ等が違うため、まずアクセス解析をやってみることが大事。一つの分析方法を紹介。

WordPressのインストール方法・セキュリティ重視 3つのポイント

WordPressのインストールをセキュリティ重視の視点から3つのポイントの解説と設定方法です。

WordPressのカテゴリ単位・フォルダ単位でBasic認証を設定する方法

カテゴリ単位でBasic認証を設定する方法の解説。WordPressのカテゴリはフォルダの実態がないですが、実は簡単な方法でプラグインも使わずにBasic認証を設置できます。

WordPressの投稿データ(記事データ)の管理方法

投稿の登録の方法、投稿データの管理方法の解説。MetaManagerなどのプラグインを入れた場合の入力ボックスを表示させる方法についても解説します。

WordPressのログイン画面 URLを変更する 管理画面に Basic認証を設定する

ログインURLは誰でも知っています。そのまま使うとリスクが高まりますのでログインURLを変更し Basic認証で二重チェックをする方法を解説。

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成する方法を説明しています。

WordPressの一覧ページのテンプレートの種類とファイルの設定

ファイル名に従って一覧ページのテンプレートは選択される。ルールに従ってファイル名を付けることで任意のカテゴリ、タクソノミーごとのテンプレートを指定可能。