Как перенаправлять пользователей на страницу входа, когда они пытаются получить доступ к странице заказа, но не когда они пытаются проверить
Я использую Модуль проверки входа , который добавляет встроенную форму входа в панель проверки информации об учетной записи. Анонимным пользователям не нужно активировать свои учетные записи для завершения оформления заказа или оплаты, а это все, что я хочу. Однако после того, как PayPal перенаправляет пользователей обратно на мой сайт, и пользователи пытаются получить доступ к странице заказа (история заказов), появляется следующее сообщение:
Вы не авторизованы для доступа к этой странице.
Есть ли способ, которым я могу перенаправлять пользователей на страницу входа, когда они пытаются получить доступ к странице заказа, вместо того, чтобы появляться вышеупомянутое сообщение?
Короче говоря, я хочу, чтобы мои пользователи перенаправлялись на страницу входа, когда они пытаются получить доступ к странице заказа (истории заказов), но не когда они пытаются оформить заказ.
2 answers
Это одна из основных функций модуля LoginToboggan.
Когда Присутствует форма входа в систему при отказе в доступе (403) включена в форме настройки, на любой странице с отказом в доступе будет отображаться страница входа. При входе в систему пользователи перенаправляются обратно по ранее запрошенному пути.
Да, вы можете справиться с этим с помощью Rules
, создайте правило в admin/config/workflow/rules/reaction/add
и в react on event
выберите commerce order is view
(или завершите процесс оформления заказа), затем добавьте условие, чтобы if user not logged in
при действии Redirect
пользователь вошел на страницу входа.