Come posso reindirizzare il cliente dell'utente alla pagina che era prima di un successo di accesso?
-
12-12-2019 - |
Domanda
Sto usando Magento 1.4.1.1
Solo il registro del cliente può accedere a un paio di pagine del mio sito web. Quindi, quando un cliente non registrato tenta di accedere a una pagina che ha bisogno di essere registrato, viene reindirizzato alla pagina di accesso.Usando il seguente codice.
if(!$this->helper('customer')->isLoggedIn())
{
Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('customer/account'));
}
.
DOPO IL SUCCESSO DI LOGIN Il cliente viene reindirizzato al proprio pannello Account (la pagina precedente La posizione è persa).
C'è un modo per rendere Magento tornare alla pagina in cui era il cliente, dopo il login successo?
Saluti
Soluzione
È possibile aggiungere questo alla pagina del cliente deve effettuare il login: Mago :: GetModel ('Customer / Session') -> Setbeforeauthurl ([il collegamento della pagina])
Altri suggerimenti
Vai a System-> Configurazione-> Configurazione del cliente-> Opzioni di accesso e impostare il valore per Redirect Customer to Account Dashboard after Logging in
in No
.
Ci sono (almeno) due opzioni per controllare il target reindirizzamento dopo il login del cliente:
- .
- Imposta la proprietà
after_auth_url
presso la sessione clienti. - In combinazione con il suddetto suggerimento di Marius , aggiungi un parametro di richiesta
referer
alla richiesta di accesso.
Vedi Mage_Customer_AccountController::_loginPostRedirect()
.
e cercando di inserirlo nel file del controller 'app / code / local / mage / cliente / controller / accountController.php' nella funzione "LoginPostaction" poco prima "IF ($ questo-> GetRequest () -> Ispost()) {"