سؤال

أرغب في إرسال رسائل دفع دفعية باستخدام SwiftMailer ولكن فقط أتساءل ما هو الخيار الأفضل لهذا. المشكلة هي أن محتوى البريد الإلكتروني يجب تخصيصه ، أي سيكون هناك تحية في الأعلى ورابط مخصص.

هنا هو رمز OOP الحالي الخاص بي:

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);

أنا أستخدم حاوية لـ Swiftmailer. لذلك كما ترون ، يمكنني بسهولة تحديد مجموعة من عنوان البريد الإلكتروني لإرسال الرسالة إليها. كيف يمكنني الآن تخصيص المحتوى؟ المتغيرات التي أحتاج إلى تضمينها في المحتوى هي المورد $-> الاسم ورابط $ المورد->.

أنا شخصياً لا أستطيع أن أرى كيف يمكن القيام بذلك ، بخلاف إرسال كل بريد إلكتروني بشكل فردي في حلقة foreach (). إذا كان هذا هو الحال ، فليس من الأفضل استخدام وظيفة PHP Mail () الداخلية؟

هل كانت مفيدة؟

المحلول

يمكنك محاولة استخدام المكون الإضافي للديكور:

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top