2014-02-21 32 views
0

我做了电子邮件黑名单模块注册新客户。如果新的电子邮件地址与黑名单相匹配,则需要在注册页面上返回默认模板,但返回给我的邮件。在屏幕截图上显示一个默认模板,而不是我想写的信息:电子邮件被列入黑名单。 请帮忙。Magento:自定义电子邮件错误默认模板

public function customerEmailBlackList($observer) 
{ 
    $helper = Mage::helper('emailblacklist'); 
    if (!$helper->getEnabled()) { 
     return; 
    } 
    $customer = $observer->getCustomer(); 
    $email = $customer->getEmail();    
    $emailblacklist = $helper->getEmailblacklist(); 
    // $session_data = unserialize($emailblacklist); 
    // echo $email; 
    // var_dump($session_data); 
    if (substr_count($emailblacklist, $email) > 0) { 
     echo "blacklisted"; 
    } 
    // throw new exception('blah-blah-blah'); 
    // die; 
    } 

Screenshoot:http://i.stack.imgur.com/0yUQs.jpg

回答

0

如果我理解你corrcet,你想改变什么出现的错误信息,对不对? 你可以这样做:

Mage::getSingleton('customer/session')->addError('Email is blacklisted'); 
+0

是的!谢谢!完美的作品!但仍然需要留在这个页面上,我添加了新的异常();见屏幕截图:http://i.stack.imgur.com/NfbUg.jpg(此外还有无法保存客户。) - 我需要删除它。或更好的方式来保持帐户创建页面? – EagleSBG

+0

解决。法师:: throwException('电子邮件被列入黑名单')的作品完美。顺便说一下这个正确的方法? – EagleSBG

+0

是的,那是正确的方法,这将停止储蓄过程! – imso077

相关问题