Я хотел перенаправить пользователя на страницу «Домашняя страница» вместо страницы «Моя учетная запись» после входа в систему, и мне удалось добиться этого с помощью
<customer_login>
событие.
Но я также был перенаправлен на домашнюю страницу, когда я захожу с одностраничной проверки, что я не хочу.
Ниже моя функция наблюдателя
public function setRedirectOnLogin(){ $session = Mage::getSingleton('customer/session'); if (strpos($session->getBeforeAuthUrl(), 'checkout') === false) $session->setAfterAuthUrl(Mage::getBaseUrl()); $session->setBeforeAuthUrl(''); }
Может ли кто-нибудь порекомендовать, как я могу помешать пользователю перенаправить его на домашнюю страницу после входа из одностраничного оформления заказа?
Благодарю вас.
magento-1.8
customer
login
Trimantra Software Solution
источник
источник
Сначала вы должны изменить конфигурацию вашего клиента:
Затем используйте
referrer
параметр в форме. Напримеристочник
попробуй это
источник
Просто суммировать все комментарии здесь:
Возьмите config.xml и зарегистрируйте событие для customer_login в области веб-интерфейса, как это
После этого вам нужно реализовать этот метод наблюдателя, чтобы изменить URL-адрес «после авторизации» сеанса клиента. Эта переменная будет использоваться в AccountController клиента, чтобы проверить, куда перенаправить после входа в систему.
источник
Вы можете использовать
Mage::helper('core/http')->getHttpReferer()
условие, которое вам уже нужно, чтобы увидеть, является ли реферер вашей страницей оформления заказа, и действовать соответственно.источник