Шаблон электронного письма для смены пароля Magento

Я создаю сайт электронной коммерции, используя magento 1.6.1.0. Я использую одно расширение, которое заставляет пользователей входить в систему перед входом на сайт. Все идет нормально проблема только со ссылкой сброса забытого пароля. Это расширение также блокирует ссылку для сброса пароля. Я не получил поддержки от этой группы расширения.

Сегодня утром я работал над шаблоном электронного письма, чтобы изменить логотип Magento по умолчанию. В то время у меня возникла одна идея, что при создании новой учетной записи мы получим данные электронной почты и пароля. почему мы не можем использовать этот шаблон электронной почты вместо шаблона ссылки для сброса пароля?

Я пробовал скопировать и вставить все содержимое с account_new.html на account_password_reset_confirmation.html с app/locale/en_US/template/email

После внесения этих изменений я получил электронное письмо с адресом электронной почты L: [email protected] и паролем:

Я получил почту в виде пустого поля для пароля.

Пожалуйста, посоветуйте мне изменить шаблон забытого пароля с account_password_reset_confirmation.html на account_new.html, чтобы я мог отправить пароль напрямую.


person Carolina    schedule 08.05.2012    source источник


Ответы (1)


могу ли я получить ваш код для отладки, если вы используете

$customer = Mage::getModel("customer/customer");
         $customer->setWebsiteId(Mage::app()->getWebsite()->getId());
         $customer->getPassword();

это не сработает. пароль будет зашифрован в базе данных. так что вы не можете использовать это. единственный способ - сгенерировать новый пароль и обновить его в базе данных и отправить новый пароль на почту пользователя.

пример кода для генерации пользовательского пароля

$alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";     //Random password generation
             $pass = array(); //remember to declare $pass as an array
             $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
             for ($i = 0; $i < 6; $i++) {
                 $n = rand(0, $alphaLength);
                 $pass[] = $alphabet[$n];
             }
             $newpassword =implode($pass);
person ashok kumar    schedule 02.01.2015