Как перенаправить клиента пользователя к странице, которую он / она был до успеха входит в систему?
-
12-12-2019 - |
Вопрос
Я использую Magento 1.4.1.1
Зарегистрирован только клиент, может получить доступ к паре страниц моего сайта. Итак, когда не зарегистрирован в зарегистрированном клиенте, пытается получить доступ к странице, которая нуждается в его / она, чтобы войти в систему, он / она перенаправляется на страницу входа в систему.Используя следующий код.
if(!$this->helper('customer')->isLoggedIn())
{
Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('customer/account'));
}
.
После входа в систему успеха клиент перенаправляется на его / ее панель аккаунта (предыдущее местоположение страницы теряется).
Есть ли способ сделать Magento вернуться на страницу, где клиент был, после входа в систему?
С уважением
Решение
Вы можете добавить это на страницу клиента должна войти: MAGE :: GetModel («Клиент / сеанс») -> SetBeforeAleturl ([ссылка вашей страницы])
Другие советы
Перейти к системе Система-> Конфигурация -> Конфигурация клиента-> Параметры входа в систему и установите значение для Redirect Customer to Account Dashboard after Logging in
для No
.
Есть (как минимум) два варианта для управления целью перенаправления после входа клиента:
- Установите свойство
after_auth_url
на сеансе клиента. - в сочетании с вышеупомянутым Предложение Marius , добавить параметр запроса
referer
к запросу LoginPost.
Смотрите Mage_Customer_AccountController::_loginPostRedirect()
.
И пытаясь поставить его в файл контроллера «Приложение / Code / local / mage / customer / controllers / accountController.php» в функции «loginPostactaction» как раз перед «если ($ this-> getrequest () -> Ispost()) {"