2013-07-04 13 views
7

メールにカスタムヘッダーを追加できるLaravel 4 docs/Email API内でメソッドを見つけることができない場合があります。例えばLaravel 4のカスタムメールヘッダー

Mail::send('emails.welcome', $data, function($message) 
{ 
    $message->to('[email protected]', 'John Smith')->subject('Welcome!'); 
    $message->headers('X-Tags', 'tag1 tag2 tag3'); 
}); 

誰もこれを行うことができる方法を知っていますか?

答えて

15

私が知る限り、カスタムメイドのヘッダーを追加する方法はありません。

このようなものを試してみてください。

$message->getSwiftMessage()->getHeaders()->addTextHeader('X-Tags', 'tag1 tag2 tag3'); 

トリックを行う必要があるソースを見ても、見た目には見えません。


としては、私が見落としIlluminate\Mail\Messageクラスの__call魔法のメソッドがあるとして必要とされていないgetSwiftMessage方法以下のコメントで指摘しました。

$message->getHeaders()->addTextHeader('X-Tags', 'tag1 tag2 tag3'); 
+1

'getSwiftMessage()'メソッドは、それが必要ですか?私はちょうど '$ Message-> getHeaders() - > addTextHeader()で良い結果を得ました。 –

+0

ああ、それは必要ありません。 'Swift_Message'クラスのメソッドを起動する魔法のメソッドに気付かなかった。私は私の答えを更新しました。 –

+0

ありがとう@JasonLewis – eski009