2010-11-29 3 views
1

나는 SwiftMailer를 사용하여 배치 메일을 보내고 싶지만이 옵션이 무엇이 최선인지 궁금합니다. 문제는 이메일 콘텐츠를 맞춤 설정해야한다는 것입니다. 즉 상단에 인사말이 표시되고 맞춤 링크가 표시됩니다. 내가 SwiftMailer에 대한 컨테이너를 사용하고일괄 이메일 맞춤 콘텐츠로 보내기

foreach($suppliers as $supplier) 
{ 
    $quote=new Quote(); 
    $quote->enquiry_id=$enquiry->id; 
    $quote->supplier_id=$supplier->id; 

    if($quote->save()) 
    { 
     $supplier_emails[]=$supplier->email; 
    } 
} 

$message=new SwiftMailMessage; 
$message->setTo($supplier_emails); 
$message->setFrom($params['adminEmailFromAddress'] => $params['adminEmailFromName']); 
$message->setBody('Here is the message itself') 
App::app()->mail->batchSend($message); 

:

여기에 내 현재의 OOP 코드입니다. 보시다시피 메일을 보낼 이메일 주소의 배열을 쉽게 지정할 수 있습니다. 이제 콘텐츠를 어떻게 사용자 정의 할 수 있습니까? 내용에 포함시킬 변수는 $ supplier-> name과 $ supplier-> link입니다.

개별적으로 foreach() 루프에서 각 전자 메일을 보내는 것 이외에는 개인적으로 어떻게 할 수 있는지 알 수 없습니다. 그렇다면 내부 PHP mail() 함수를 사용하는 것이 낫지 않습니까?

답변

1

당신은 데코레이터 플러그인을 사용하여 시도 할 수 :

http://swiftmailer.org/docs/decorator-plugin

+0

재미있는, 나는 그것을 보지 못했다. 필자가 작성한 사이트에서 데코레이터 플러그인이이 문제를 해결할 수있는 방법을 제공하지만 플러그인을 사용하지 않고도이 문제를 해결할 수있는 다양한 방법이 있습니다. " - 이것에 대한 제안? – GSTAR

+0

글쎄, 나에게 이것이 가장 쉬운 해결책 인 것 같다. 당신은 자신의 Replacement Lookup 기능을 제공 할 수도 있습니다. – kapa