Как показать детали заказа в шаблонах электронной почты транзакций Magento?

Я хочу показать имя клиента и идентификатор заказа в шаблонах электронной почты транзакции. Но эти ценности приходят динамически.

Я создаю шаблон электронной почты с идентификатором магазина 1. Я вызываю этот шаблон электронной почты на странице phtml. Но как я отправляю идентификатор и имя заказа на страницу шаблона, которая появляется динамически.

Код на странице phtml

$vars = Array('name' => '$name',
              'orderId' => '$ordernumber');   
 $storeId = Mage::app()->getStore()->getId();
$translate  = Mage::getSingleton('core/translate');
$mailTemplate=Mage::getModel('core/email_template')
->setTemplateSubject('mailSubject')
->sendTransactional(1, $sender, $email, $name, $vars, $storeId);
            if (!$mailTemplate->getSentSuccess()) {
                   echo "no send";
                }

person Prince    schedule 14.04.2015    source источник
comment
Как вы справились с приведенным ниже ответом, принц? Это выглядит полезным, но вы, похоже, не ответили/не проголосовали за него.   -  person halfer    schedule 06.10.2017


Ответы (1)


Пожалуйста, в phtml сначала загрузите заказ, который вы хотите отправить.

затем извлеките из них необходимые параметры и перейдите к транснациональному шаблону

Вы можете изменить отправку и получателя в соответствии с вашими потребностями

$customer_name   = 'John Doe'; //set dynamically as per you need
$order_id = '1110000'; //set dynamically as per you need

// Here is where we can define custom variables to go in our email template!

$email_template_variables = array(
    'customer_name' => $customerName,
  'order_id ' => $order_id 
    // Other variables for our email template.
);

$templateId = 1;
                // Get Store ID    
                $store = Mage::app()->getStore()->getId();
                $translate  = Mage::getSingleton('core/translate');
                // Send Transactional Email
                Mage::getModel('core/email_template')
                ->sendTransactional($templateId,  Mage::getStoreConfig(self::XML_PATH_EMAIL_SENDER),  Mage::getStoreConfig(self::XML_PATH_EMAIL_RECIPIENT), null,   $email_template_variables        );
                $translate->setTranslateInline(true);

Ваш шаблон должен включать переменную массива для установки в отправленном электронном письме

ie. {{var customer_name}}  {{var order_id}}
person JIGNESH    schedule 15.04.2015