ワードプレス メールの送信元をPHPコードで簡単に変更する方法を解説いたします。


ワードプレスのメール送信元の名前とメールアドレスを変更する

ワードプレスにはメール送信プログラムが組み込まれていますが、そのメールの送信元が初期設定がwordpress@ で始まる物となっていたり管理者のメールアドレスであったりするため、返信を受け取れなかったり、送信元の名前を変えたいことがあるかもしれません。

メール送信元の変更には2つのフックと呼ばれる、ワードプレスの処理に割り込む処理を使います。
下記のコードをテーマのFunctions.phpに追加することで、メールの送信元と名称を変更することが可能です。

/* 1送信元のメールアドレスを変更します */
add_filter( 'wp_mail_from', 'change_from_mailaddress' );
function change_from_mailaddress( $email )
{
    $email = '任意のメールアドレス';
    return $email;
}

/* 2送信者名を変更します*/
add_filter( 'wp_mail_from_name', 'change_from_mailname' );
function change_from_mailname( $name )
{
    $name = '任意の送信者名';
    return $name;
}

/* で囲まれている部分はコメントですので、プログラムの実行には影響を与えません。

‘任意のメールアドレス’、’任意の送信者名’ の部分はお好きなメールアドレスと送信者名に変更されてください。

送信者名やメールアドレスが上記のコードを付け加えても変わらない場合

この場合、プラグインやその他のテーマの機能で、このコードが実行された後に、メール送信者や名称が変更されている可能性がございます。

この場合add_filter 関数がより後に実行されるように下記のように、実行順序を指定してみます。

/* 1送信元のメールアドレスを変更します */
add_filter( 'wp_mail_from', 'change_from_mailaddress' ,99);
function change_from_mailaddress( $email )
{
    $email = '任意のメールアドレス';
    return $email;
}

/* 2送信者名を変更します*/
add_filter( 'wp_mail_from_name', 'change_from_mailname' ,99);
function change_from_mailname( $name )
{
    $name = '任意の送信者名';
    return $name;
}

99 の部分がこの処理を実行する順番です。デフォルトは10番目ですので他のプログラムが送信元など変更した後に実行される可能性が高くなります。

WordPress ワードプレスのテーマやプラグインのカスタマイズのご依頼・ご相談はWPドクターまでお気軽にお送りください