Как перенаправлять пользователей на страницу входа, когда они пытаются получить доступ к странице заказа, но не когда они пытаются проверить


Я использую Модуль проверки входа , который добавляет встроенную форму входа в панель проверки информации об учетной записи. Анонимным пользователям не нужно активировать свои учетные записи для завершения оформления заказа или оплаты, а это все, что я хочу. Однако после того, как PayPal перенаправляет пользователей обратно на мой сайт, и пользователи пытаются получить доступ к странице заказа (история заказов), появляется следующее сообщение:

Вы не авторизованы для доступа к этой странице.

Есть ли способ, которым я могу перенаправлять пользователей на страницу входа, когда они пытаются получить доступ к странице заказа, вместо того, чтобы появляться вышеупомянутое сообщение?

Короче говоря, я хочу, чтобы мои пользователи перенаправлялись на страницу входа, когда они пытаются получить доступ к странице заказа (истории заказов), но не когда они пытаются оформить заказ.

Author: Shawn Conn, 2015-11-16

2 answers

Это одна из основных функций модуля LoginToboggan.

enter image description here

Когда Присутствует форма входа в систему при отказе в доступе (403) включена в форме настройки, на любой странице с отказом в доступе будет отображаться страница входа. При входе в систему пользователи перенаправляются обратно по ранее запрошенному пути.

 3
Author: Shawn Conn, 2015-11-16 21:19:54

Да, вы можете справиться с этим с помощью Rules, создайте правило в admin/config/workflow/rules/reaction/add и в react on event выберите commerce order is view (или завершите процесс оформления заказа), затем добавьте условие, чтобы if user not logged in при действии Redirect пользователь вошел на страницу входа.

 1
Author: Yuseferi, 2015-11-16 21:33:59