Кто-нибудь знает, как мне получить идентификатор электронной почты по имени, заданному на бэкэнде? У меня есть электронное письмо, созданное в бэкэнде в транзакционных электронных письмах, которое я хочу отправить программно, но его идентификатор может отличаться в зависимости от того, в каком экземпляре я работаю (локальный, живой, этап), и я могу предоставить только одно и то же имя для этого.
У меня есть это:
Mage::getModel('core/email_template')->sendTransactional(
$templateId,
$sender,
$recepientEmail,
$recepientName,
$vars,
$store);
И мне нужно узнать $ templateId, и я знаю только, что я сохранил письмо с именем «Тесты».
пожалуйста, проверьте коды ниже. В любом случае, это мой первый ответ на stackoverflow.
$templateName = "Tests";
$templateID = Mage::getModel('core/email_template')->loadByCode($templateName)->getId();
Вы можете получить шаблон электронной почты:
$templateName = “Test”;
$emailTemplate = Mage::getModel('core/email_template')->loadByCode($templateName);
Получить идентификатор:
$templateId = $emailTemplate->getId();
А затем отправьте письмо по пути:
Mage::getModel('core/email_template')->sendTransactional(
$templateId,
$sender,
$recepientEmail,
$recepientName,
$vars,
$store
);
или используйте «мой» метод:
$vars = array('key' => 'value');
$storeId = Mage::app()->getStore()->getStoreId();
$recipientEmail = '[email protected]';
$recipientName = 'Some Name';
$emailTemplate->setSenderEmail(Mage::getStoreConfig('trans_email/ident_general/email', $storeId));
$emailTemplate->setSenderName(Mage::getStoreConfig('trans_email/ident_general/name', $storeId));
$emailTemplate->send($recipientEmail, $recipientName, $vars);