Я пытаюсь выполнить reset мой тестовый пароль учетной записи клиента для своего магазина, когда я нажимаю ссылку на забытый пароль, он просит меня указать адрес электронной почты, когда я ввешу действительный адрес электронной почты, в котором говорится, что пароль reset отправленный на вашу почту, и он пересылает мне ссылку по электронной почте, когда я нажимаю на ссылку, на которой отображается сообщение об ошибке Fatal error: Call to a member function setCustomerId() on a non-object in /var/www/websites/jivity/app/code/core/Mage/Customer/controllers/AccountController.php on line 587
, как я могу исправить эту ошибку?? и Thanx заранее.
Magento: пароль reset не работает
Ответ 1
Исправлена одна и та же проблема на обновленном сайте 1.6.1.0. Вы используете устаревшие клиенты. xml, diff your copy и app/design/frontend/base/default/layout/customer.xml
, чтобы найти изменения, которые вам нужны.
Ответ 2
Если кому-то интересно, в новой версии (1.6 ++) файла customer.xml добавлен следующий бит:
<customer_account_resetpassword translate="label">
<label>Reset a Password</label>
<remove name="right"/>
<remove name="left"/>
<reference name="head">
<action method="setTitle" translate="title" module="customer">
<title>Reset a Password</title>
</action>
</reference>
<reference name="root">
<action method="setTemplate">
<template>page/1column.phtml</template>
</action>
<action method="setHeaderTitle" translate="title" module="customer">
<title>Reset a Password</title>
</action>
</reference>
<reference name="content">
<block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>
</customer_account_resetpassword>
Ответ 3
Если вы находитесь в Magento 1.9.1 Вот решение, которое сработало для меня.
Если ваша тема не содержит каких-либо конкретных настроек конфигурации или макета, вы можете безопасно удалить свой файл customer.xml(или просто переименовать в customer1.xml), расположенный по адресу /app/design/frontend/default/<your_theme_package>/<your_theme_name>/layout/customer.xml
Если вы удалите этот файл, magento загрузит параметры конфигурации по умолчанию (с обновлениями) из темы factory по умолчанию magento. /app/design/frontend/base/default/layout/customer.xml
Не забудьте сбросить/обновить конфигурацию magento через административную область, это заставит файл customer.xml перезагружаться.
Ответ 4
добавьте ниже код в свой файл costomer.xml [app/design/frontend///layout/customer.xml].
<customer_account_resetpassword translate="label">
<label>Reset a Password</label>
<remove name="right"/>
<remove name="left"/>
<reference name="head">
<action method="setTitle" translate="title" module="customer">
<title>Reset a Password</title>
</action>
</reference>
<reference name="root">
<action method="setTemplate">
<template>page/1column.phtml</template>
</action>
<action method="setHeaderTitle" translate="title" module="customer">
<title>Reset a Password</title>
</action>
</reference>
<reference name="content">
<block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>
</customer_account_resetpassword>
Он работает
Ответ 5
Я пробовал выше, но не работал. С другой стороны, которую я видел, я добавил тот же код выше в "mageb2bextensionscustomer.xml" в той же папке макета, очистил весь кеш, и теперь он работает.: -)
Ответ 6
Всегда создавайте резервные копии своих файлов!
Я нашел быстрый способ решить проблему: я заменил пользовательский customer.xml
, используемый моей темой в app/design/frontend/your_theme_package/your_theme_name/layout/
, с файлом в app/design/frontend/base/default/layout/customer.xml
.
Теперь он работает отлично.