magento 发邮件[不用template/使用template]

来源:互联网 发布:易语言自动喊话源码 编辑:程序博客网 时间:2024/05/12 13:21


不使用template发邮件:

$mail = Mage::getModel('core/email');  $mail->setToName('Your Name');  $mail->setToEmail('em@bluecomgroup.com');  // send email to this email address$mail->setBody('Mail Text / Mail Content');  $mail->setSubject('Mail Subject');  $mail->setFromEmail('test@gmail.com');// set send email from this address  $mail->setFromName("Msg to Show on Subject");  $mail->setType('html');// YOu can use Html or text as Mail format    try {  $mail->send();  }  catch (Exception $e) {  Mage::getSingleton('core/session')->addError('Unable to send.');  $this->_redirect('');  } 

使用template:

module/config.xml加入


<template>            <email>                <test_email_template module="some api">                    <label>test module</label>                    <file>test_admin.html</file>                    <type>html</type>                </test_email_template>            </email>        </template>

app/locale/en_US/template/email/test_admin.html


<div><h1> test email</h1><p>Hi there {{var myvar1}} {{var myvar2}} from {{var myvar3}}. This is just some example template to test  module.</p></div>

任意action方法中加入:

$emailTemplate  = Mage::getModel('core/email_template')                        ->loadDefault('test_email_template');//Create an array of variables to assign to template$emailTemplateVariables = array();$emailTemplateVariables['myvar1'] = 'em';$emailTemplateVariables['myvar2'] = 'Am';$emailTemplateVariables['myvar3'] = 'ActiveCodeline';$processedTemplate = $emailTemplate->getProcessedTemplate($emailTemplateVariables);$emailTemplate->setSenderName('Sender Name');                  $emailTemplate->setSenderEmail('sender@gmail.com');                  $emailTemplate->setTemplateSubject('em Test');/* * Or you can send the email directly, * note getProcessedTemplate is called inside send() */$emailTemplate->send('sendto@bluecomgroup.com','em', $emailTemplateVariables);


原创粉丝点击