WP Mail SMTPでメールが送れないときの対処方

WordPressのメールは基本的にwp_mail関数というのが用意されているみたいです。WordPressからメールが行く場合はこの関数を使ってメールしていることになるみたいです。

WordPressの関数からメールが行く場合、迷惑メールになったり色々面倒な事もあります。例えばlogwではメールサーバーは外部のメールサーバーを使っているので問いあわせフォームからメールがくると差出人がApacheとかになっていたりなど。

外部のメールサーバーから送れるようにする

Web、DB、メールなどが分かれている場合は外部のメールサーバーから飛ぶのが良いので、このWP Mail SMTPを使います。設定方法などは通常のSMTP認証と同じなので割愛します。

テストメール送ると失敗する

普通にSMTPの設定すると全然送れません。え?なんで?っていうぐらい送れません。これはプラグインのPHPがデフォルトでSSL証明書を検証してしまうために起きていることみたいです。

プラグインの修正をする

プラグインの修正をしていきます。修正するプラグインのファイル名はwp_mail_smtp.phpというphpがいるになります。

[php]
//144行目付近に追加
// Set the other options
$phpmailer->Host = get_option('smtp_host');
$phpmailer->Port = get_option('smtp_port');

// If we're using smtp auth, set the username & password
if (get_option('smtp_auth') == "true") {
$phpmailer->SMTPAuth = TRUE;
$phpmailer->Username = get_option('smtp_user');
$phpmailer->Password = get_option('smtp_pass');
$phpmailer->SMTPOptions = array('ssl' => array('verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true));//ここに追記する
}
[/php]

これをアップすれば完了です

この記事に関する技術サポート・ご相談

「手順通りにいかない」「自社環境への構築を代行してほしい」など、
インフラ・サーバー周りでハマった際はお気軽にご相談ください。

相談・問い合わせフォームを開く

※ Googleフォームへ移動します(初回相談無料)

個人支援・寄付について

サイトラボでは個人支援・寄付を受けております。ご協力いただける方はお願いいたします。当サイトではビットコインで受け付けております。

  • ビットコイン:3LHnADwZwUbic2L45EnVJEykiG6KfbqrwS