Seperti yang dilakukan di Magento 1.xx, bagaimana email transaksional kustom dapat dikirim.
Tambahan
Tambahkan email dalam bcc
Kirim lampiran bersama email
Seperti yang dilakukan di Magento 1.xx, bagaimana email transaksional kustom dapat dikirim.
Tambahan
Tambahkan email dalam bcc
Kirim lampiran bersama email
Jawaban:
okie sedikit membantu debugging,
Mengirim email transaksional di Magento2
class Dummy
{
/**
* @var \Magento\Framework\Mail\Template\TransportBuilder
*/
private $_transportBuilder;
public function __construct( \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder){
$this->_transportBuilder = $transportBuilder;
}
public function sendEmail($templateId =1, $storeId =1,$templateParams)
{
$transport = $this->_transportBuilder->setTemplateIdentifier($templateId)
->setTemplateOptions(['area' => Magento\Framework\App\Area::AREA_FRONTEND, 'store' => $storeId])
->setTemplateVars($templateParams)
->setFrom('someemail@email.com')
->addTo('toemail@email.com')
->setReplyTo('replyto@email.com')
->addBcc('bcc@email.com')
->getTransport();
$transport->sendMessage();
}
}
<!--@subject Promopoup@-->
Magento 2 Menggunakan \ Magento \ Framework \ Mail \ Template \ TransportBuilder kelas untuk mengirim email khusus.
Anda perlu membuat modul sederhana dan mengatur file email_tempaltes.xml untuk mendefinisikan template email transaksi Anda.
Anda dapat mengirim email dari Adminhtml atau area Lingkup Frontend.
Saya telah membagikan tautan untuk panduan langkah demi langkah untuk mengirim surat khusus dari Magento 2 menggunakan modul.
ini bekerja untuk saya
$emailTemplateVariables = array();
$emailTempVariables['myvar'] = $myvar;
$senderName = 'test';
$senderEmail = 'sender@test.com';
$postObject = new \Magento\Framework\DataObject();
$postObject->setData($emailTempVariables);
$sender = [
'name' => $senderName,
'email' => $senderEmail,
];
$transport = $this->_transportBuilder->setTemplateIdentifier('myemail_email_template')
->setTemplateOptions(['area' => \Magento\Framework\App\Area::AREA_FRONTEND, 'store' => \Magento\Store\Model\Store::DEFAULT_STORE_ID])
->setTemplateVars(['data' => $postObject])
->setFrom($sender)
->addTo($email)
->setReplyTo($senderEmail)
->getTransport();
$transport->sendMessage();
Info lebih lanjut
bagaimana cara mengirim email khusus tanpa template di magento2?