2016-11-23 5 views
0

Mail::queue/Mail::sendを使用してメールを送信する場合は、メールテンプレートと件名を別々に渡す必要があります。ブレードテンプレート内でメールの件名を定義することはできますか?

メールテンプレートで件名を管理する方法はありますか(複数言語に適しています)。

I.e.テンプレートの最初の行

mail.blade.php

This is the subject 
Hello User, 
foobar 
+0

あなたがlaravelのどのバージョンを使用していますか? – tomirons

+0

なぜテンプレート自体の件名を管理したいのですか?多言語サポートでこれをやっているのなら、それはresources/langフォルダのためのものです。 –

答えて

0

ように、それは難しいことではありません。

Mail::queue($template, $data, function (Message $message) use ($toUser, $sendingName, $sendingAddress) { 
     // take subject from first line of the template 
     $body = $message->getSwiftMessage()->getBody(); 
     $bodyLines = explode("\n", $body); 
     if (count($bodyLines) == 0) { 
      Log::warning('Empty mail'); 
      return; 
     } 
     $subject = $bodyLines[0]; 
     unset($bodyLines[0]); 

     // send 
     $message->getSwiftMessage()->setBody(implode("\n", $bodyLines)); 

     .... 
関連する問題