cakephpでQdmailのReturn-Pathの設定方法
Qdmailは本当に便利かつ強力なメール送信ライブラリだと思います。まず、作者にお礼を申し上げます。
さて、実際にQdmailを使う時にどうしてもReturn-Pathを設定したい時があります。
本家にもRetrun-Pathの設定方法が掲載されていますが
http://hal456.net/qdmail/return_path
これだけ見ても結局、関数型のqd_send_mailを使ってください
ということになります。
せっかくCakephp対応のQdmailComponentがあるのに、使わないのはもったいないですね。
でも、QdmailComponentを下記のように使うと
$this->Qdmail->to( 'to@example.com' , '配信先日本語名' ); $this->Qdmail->subject('タイトル'); $this->Qdmail->from('from@example.com' , '配信元日本語名' ); $this->Qdmail->text( "本文" ); $this->Qdmail->send();
なぜかReturn-Pathの値は
formと同じ設定ではなく、apache@mailserver.xx.xx とか自動挿入になっています。
それはいけません。
いろいろソースをたどり着いたら
どうやら、mtaOption()のメソッドがあって、それはreturn-pathを設定できるらしいです。
先のソースを一行だけ追加するだけで、Return-Pathの設定が完了します。
$this->Qdmail->mtaOption( "-f returnpath@example.com" ); $this->Qdmail->to( 'to@example.com' , '配信先日本語名' ); $this->Qdmail->subject('タイトル'); $this->Qdmail->from('from@example.com' , '配信元日本語名' ); $this->Qdmail->text( "本文" ); $this->Qdmail->send();
これで、完璧です!