2013-07-04 26 views
7

Tôi không thể định vị phương thức trong Laravel 4 docs/Email API nơi tôi có thể thêm tiêu đề tùy chỉnh vào email.Tiêu đề email tùy chỉnh trong Laravel 4

Ví dụ:

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

Có ai biết làm thế nào điều này có thể được thực hiện?

Trả lời

15

Theo như tôi biết không có cách nào để thêm tiêu đề tùy chỉnh mà không cần liên lạc với Swift Mailer.

Hãy thử một cái gì đó như thế này.

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

Nó không có vẻ đẹp nhưng nhìn từ nguồn cần thực hiện thủ thuật.


Như đã chỉ ra trong các ý kiến ​​dưới đây là phương pháp getSwiftMessage không cần là có một phương pháp kỳ diệu __call trên lớp Illuminate\Mail\Message mà tôi bỏ qua.

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

Phương thức 'getSwiftMessage()' là phương thức cần thiết? Tôi đã có một kết quả tốt với chỉ '$ Message-> getHeaders() -> addTextHeader()' –

+0

Ah yeah nó không cần thiết. Đã không nhận thấy phương pháp ma thuật ở đó kích hoạt các phương thức trên lớp 'Swift_Message'. Tôi đã cập nhật câu trả lời của mình. –

+0

Cảm ơn @JasonLewis – eski009

Các vấn đề liên quan