Je voulais rediriger l'utilisateur vers la page "Accueil" au lieu de la page "Mon compte" après la connexion, et j'ai réussi à y parvenir en utilisant
<customer_login>
un événement.
Mais j'ai également été redirigé vers la page d'accueil pendant que je me connecte depuis la page de paiement que je ne veux pas.
Voici ma fonction d'observateur
public function setRedirectOnLogin(){ $session = Mage::getSingleton('customer/session'); if (strpos($session->getBeforeAuthUrl(), 'checkout') === false) $session->setAfterAuthUrl(Mage::getBaseUrl()); $session->setBeforeAuthUrl(''); }
Quelqu'un peut-il s'il vous plaît guider comment puis-je empêcher l'utilisateur de le rediriger vers la page d'accueil après la connexion à partir de la page de paiement?
Merci.
magento-1.8
customer
login
Solution logicielle Trimantra
la source
la source
Vous devez d'abord modifier la configuration de votre client:
Utilisez ensuite un
referrer
paramètre sur le formulaire. Par exemplela source
essaye ça
la source
Juste pour résumer tous les commentaires ici:
Prenez un config.xml et enregistrez un événement pour customer_login dans la zone frontend comme ceci
Après cela, vous devez implémenter cette méthode d'observateur pour modifier l'URL "après l'authentification" de la session client. Cette variable sera utilisée dans le AccountController du client pour vérifier où rediriger après la connexion.
la source
Vous pouvez utiliser
Mage::helper('core/http')->getHttpReferer()
dans la condition que vous avez déjà pour voir si le référent est votre page de paiement et agir en conséquence.la source