客户的密码未显示在电子邮件模板magento 1.9.1.0中

时间:2015-03-03 19:50:09

标签: magento passwords email-templates

我在电子邮件中显示密码时遇到问题(account_new.html)

<strong>Email</strong>: {{var customer.email}}<br/>
<strong>Password</strong>: {{htmlescape var=$customer.password}}<p>

注册后密码未显示在模板中。 我怎样才能解决这个问题?我使用magento 1.9.1.0

2 个答案:

答案 0 :(得分:6)

Magento 1.9版本在电子邮件中发送密码有问题。 而不是在{{htmlescape var=$customer.password}}

下设置var值

有一种解决方案可以在电子邮件中发送密码

打开核心文件或按照您喜欢的方式扩展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)

这是不可能的,因为密码将以加密格式存储。 它是不可逆转的格式。

在邮件中发送密码不是最佳做法。 您必须跟进最佳实践,即使您的客户坚持要您做这件事。你必须说服他不要接受这种事情。

由于客户在注册过程中提供了密码。显然他知道他的密码。如果他忘记了,那么他可以使用忘记的密码来获取他的新密码。

无论如何,我不建议您通过电子邮件发送密码,抱歉。