WordPressからsmtpでメール送信
これにはいくつか方法があります。
- コード(PHP)から設定してメール送信
- プラグインから設定してメール送信
もし技術的なことがしたいなら前者の方法、
単純にsmtpでメール送信したいなら後者の方法です。
それぞれを出来るだけ分かりやすく解説します。
目次
前提.初めにsmtp設定をサーバー側でやっておこう
ここは具体的には解説しません。
なぜならメール送信するのが目的だからです。
サーバーでSMTP設定済みの前提で説明していきます。
SMTPでメール送信する方法はサーバーごとに違うので、
設定してないなら次の公式ページを参考にしてください。
↓ 各レンタルサーバーごとの設定手順
- さくらのレンタルサーバー
メールソフトの一般的な設定をしたい : https://help.sakura.ad.jp/mail/2114/?article_anchor=js-nav-0
- エックスサーバー
- ロリポップ
各種メールソフトの設定方法 : https://lolipop.jp/manual/mail/mail-set/
- スターサーバー
メールソフトの設定内容について : https://www.star.ne.jp/manual/mail_setting.php
- Conoha WING
メールクライアントソフトを設定する : https://support.conoha.jp/w/mailclient/
どのレンタルサーバーでも 独自メールアドレスを作成 ⇒ サーバーごとのSMTP接続情報を確認 という手順は変わりません。
独自メルアドを作るのも数分あればできるし、手間もかからないです。サーバーごとに手順は少し異なるので、そこは各自でなんとかしてください。
SMTP接続情報については確認済みという前提で……
方法1.PHPコードからSMTP設定してメール送信
この方法は次のような上級者向けです。
- PHPコードがそれなりに書けて読める
- 自前でコード追加するリスクを理解している
- 自分の責任でコードを管理できる
とにかく自己責任でやってください。
もしWordPress初心者・中級者、
あるいはメール送信をしたいだけの場合……
絶対に後者の方法を使うのがマストです。
それでは具体的な方法をこれから教えます。
1.使用中テーマのfunctions.phpにコード追加
まず使用中テーマのfunctions.phpを開きます。
管理画面から「外観」=>「テーマの編集」をクリック
そのあとfunctions.phpを開けばいいだけです。
開いたら次のようなコードを追加します。
↓ これは例なので各自の環境で変えること!
add_action("phpmailer_init", "send_smtp_email");
function send_smtp_email( $phpmailer ) {
$phpmailer->isSMTP();
$phpmailer->Host = "[SMTPサーバー]";
$phpmailer->SMTPAuth = true;
$phpmailer->Port = 465;
$phpmailer->SMTPSecure = "tls";
$phpmailer->Username = "[メールアドレス]";
$phpmailer->Password = "[パスワード]";
$phpmailer->From = "[送信元アドレス]";
$phpmailer->FromName = "[送信者名]";
}
↓ 上記コードの各オプションの意味
- $phpmailer->Host
使用しているSMTPサーバーのアドレス。例えばエックスサーバーなら sv***.xserver.jp のような形式。これはサーバー側のSMTP接続情報から確認できる
- $phpmailer->SMTPAuth
SMTP認証を使うかどうか。当然ながら true にする
- $phpmailer->Port
SMTP送信する時に使うポート番号。SMTP+SSLで送信するなら 465 、SSLを利用しないなら 587 と設定すればいい。(特別な事情がなければ 465 にする)
- $phpmailer->Username
独自メールアドレス。例えば hogehoge@fukuro-press.com のようにドメイン名まで含めたメールアドレス全体を渡す。
- $phpmailer->Password
各レンタルサーバーで独自メルアドを作るときに設定したパスワード。必ず設定するので忘れたなんてことはないはず
- $phpmailer->From
送信元のメールアドレス。これは $phpmailer->Username と同じ独自メルアドを設定しておけばOK
- $phpmailer->FromName
送信先にメールが届いたときに表示したい送信者名。パット見たときに「あの人(ブログ)(サービス)か!」と分かる名前にするのがベター
難しそうに見えるけど、設定項目は多くありません。
こういう感じで設定しておいてください。
2.テストメールをwp_mail()から送信してみる
ここまでの設定が正しければ届きます。
実際のメール送信は次コードで試してください。
↓ WordPress標準のメール送信APIを使う
wp_mail(
"fukuropress@gmail.com",
"届きましたか?",
/// => サブジェクト(件名)
"このメールが見れたなら設定は完ぺき!"
/// => ボディ(メール内容)
);
届いたなら設定はすべて上手くいっています!
お疲れさまでした。
方法2.プラグインから設定してSMTPメール送信
この方法は誰でも簡単に設定できる方法です。
特別な事情がないなら、次のプラグインを使って下さい。
1.FluentSMTPプラグインをインストール
プラグインの新規追加画面を開きます。
そこで「FluentSMTP」と検索してください
↓ こういうのが出てくるのでインストール&有効化
プラグインURL : https://ja.wordpress.org/plugins/fluent-smtp/
インストールしたら有効化するのも忘れずに。
2.設定画面からSMTPでメールアドレスを追加する
次はメールアドレス送信の設定です。
↓ WP管理画面で「設定」=>「Fluent SMTP」をクリック
メールプロバイダの接続設定画面が表示されます。
↓ その中から「Other SMTP」を選ぶ
↓ メール送信者の設定
↓ SMTP・メールアドレスの設定
赤枠のところに注目!!
↓ そこには以下内容を入力していきます。
- 送信者メールアドレス
メールを受け取った相手に表示されるメールアドレス。これはレンタルサーバーで作成したメルアドをそのまま入力すればOK
- 送信者名
送信先にメールが届いたときに表示したい送信者名。パット見たときに「あのブログだ!」「あのサービスかな?」とすぐ分かる名前にするのがベター
- SMTP Host
メール送信するSMTPサーバーのアドレス。例えばXサーバーなら sv***.xserver.jp のような形式。これはサーバー管理画面などから確認できる
- SMTP Port
ここはSMTPを使ってるなら 465 にしておけば間違いない。もしSSLを使わないなら 587 でもいいけど、特別な事情がなければ 465 にしておく
- Encryption
普通に「SSL」を選択しておく
- SMTP Username
サーバー側で作成した独自メールアドレスを入力する。例えば hogehoge@fukuro-press.com のようにドメイン名まで含めたメールアドレス全体
- SMTP Password
サーバー側で作成した独自メールアドレスのパスワード。作成時にかならず設定しているので、忘れたとか言わないこと
あとは「接続設定を保存」のボタンを押すだけです。
少し大変だけど頑張って入力設定してください。
3.SMTP設定が正しいかテストメール送信する
最後にテストメールを送信してみます。
プラグイン画面の「Email Test」から送信可能です。
↓ このような画面からテスト送信できる
設定画面の「From」には独自メールアドレスを、「Send to」にはテスト送信先のメルアドを入力します。HTMLはON/OFFどっちでもいいです。
そしたら「Send Test Email」を押して送信
メールが届いたなら設定は完ぺきです!
お疲れ様でした。
フク郎
最新記事 by フク郎 (全て見る)
- トレンドブログが資産に?放置でアクセス急増の事例 - 3月 14, 2024