我在电子邮件中显示密码时遇到问题(account_new.html)
<strong>Email</strong>: {{var customer.email}}<br/>
<strong>Password</strong>: {{htmlescape var=$customer.password}}<p>
注册后密码未显示在模板中。 我怎样才能解决这个问题?我使用magento 1.9.1.0
答案 0 :(得分:6)
Magento 1.9版本在电子邮件中发送密码有问题。
而不是在{{htmlescape var=$customer.password}}
有一种解决方案可以在电子邮件中发送密码
打开核心文件或按照您喜欢的方式扩展AccountController.php,
在第285行找到函数createPostAction()
或找到
$customer->cleanPasswordsValidationData();
只是像这样评论
// $customer->cleanPasswordsValidationData();
也可以在其他地方进行,如第809,954行
现在它将密码发送给客户的新帐户电子邮件。
打开或扩展自定义模型文件
的magento \应用\代码\核心\法师\客户\模型\ Customer.php
找到功能
public function cleanPasswordsValidationData()
{
$this->setData('password', null);
$this->setData('password_confirmation', null);
return $this;
}
评论// $this->setData('password', null);
public function cleanPasswordsValidationData()
{
// $this->setData('password', null);
$this->setData('password_confirmation', null);
return $this;
}
答案 1 :(得分:0)
这是不可能的,因为密码将以加密格式存储。 它是不可逆转的格式。
在邮件中发送密码不是最佳做法。 您必须跟进最佳实践,即使您的客户坚持要您做这件事。你必须说服他不要接受这种事情。
由于客户在注册过程中提供了密码。显然他知道他的密码。如果他忘记了,那么他可以使用忘记的密码来获取他的新密码。
无论如何,我不建议您通过电子邮件发送密码,抱歉。