如何在自定义电子邮件通知中添加取消订阅链接我通过zend邮件功能发送电子邮件我按照此功能发送邮件在magento 身体部分我想添加取消订阅链接我们如何实现?在我的电子邮件通知中,我正在使用此功能.
public function sendMail()
{
$post = $this->getRequest()->getPost();
if ($post){
$random=rand(1234,2343);
$to_email = $this->getRequest()->getParam("email");
$to_name = 'Hello User';
$subject = ' Test Mail- CS';
$Body="Test Mail Code : ";
$sender_email = "sender@sender.com";
$sender_name = "sender name";
$mail = new Zend_Mail(); //class for mail
$mail->setBodyHtml($Body); //for sending message containing html code
$mail->setFrom($sender_email, $sender_name);
$mail->addTo($to_email, $to_name);
//$mail->addCc($cc, $ccname); //can set cc
//$mail->addBCc($bcc, $bccname); //can set bcc
$mail->setSubject($subject);
$msg ='';
try {
if($mail->send())
{
$msg = true;
}
}
catch(Exception $ex) {
$msg = false;
//die("Error sending mail to $to,$error_msg");
}
$this->getResponse()->setBody(Mage::helper('core')->jsonEncode($msg));
}
}
小智 5
如果您有自定义模块,请使用以下代码:
Mage::getModel('newsletter/subscriber')->loadByEmail($email)->getUnsubscriptionLink();
Run Code Online (Sandbox Code Playgroud)
说明:
第一部分是订户的模型.
如果您想查看模型中的可用方法,请使用以下代码:
$myModel = Mage::getModel('newsletter/subscriber');
foreach (get_class_methods(get_class($myModel)) as $cMethod) {
echo '<li>' . $cMethod . '</li>';
}
Run Code Online (Sandbox Code Playgroud)
代码的第二部分loadByEmail($email)
是获取1个特定的订户对象.$email
应该是一个emailaddress的字符串.
代码的最后一部分是selfexplaning方法.它将生成取消订阅的链接.这是Magento提供的方法.