Magento: cómo redirigir a un usuario registrado a la página de inicio

Estoy usando Magento 1.7 y me gustaría redirigir a todos mis clientes después de iniciar sesión en la página de inicio.

Estoy usando el extensión para cerrar el sitio a usuarios no registrados. No estoy usando la página de inicio de sesión predeterminada, sino una página de CMS con un botón de conexión de Facebook.

En este momento, después de que el usuario inicia sesión con Facebook, Magento está cargando la misma página sin el botón de conexión de Facebook.

He visto esto hilo, pero no encontró el AccountManager para modificarlo. ¿Dónde está? Además, no estoy seguro de que esto funcione, ya que la redirección en mi caso no ocurre en el tablero del cliente, sino en la página cms que creé.

¿Cómo (y en qué parte del código) puedo verificar si un usuario ha iniciado sesión y redirigirlo a la página de inicio?

Gracias por adelantado

preguntado el 31 de julio de 12 a las 22:07

3 Respuestas

Un enfoque sería enganchar en el **customer_login** event y establezca afterAuthUrl en la sesión del cliente.

...
public function customerLogin(Varient_Event_Observer $observer) {
    /* @var $session Mage_Customer_Model_Session */
    $session = Mage::getSingleton('customer/session');
    $session->setAfterAuthUrl(Mage::getBaseUrl());
}

Puede ver la lógica de Magento en el AccountController _loginPostRedirect Método (app/code/core/Mage/Customer/controllers/AccountController.php). Según la implementación, notará que también es posible enviar un parámetro de solicitud de referencia (nota: debe ser base64 codificado a través de Mage::helper('core')->urlEncode()).

respondido 26 mar '16, 06:03

Creo que hay una extensión hecha por AITOC que hace lo que estás tratando de hacer. En caso de que esté interesado en comprar en lugar de construir.

Respondido 01 ago 12, 19:08

usando el evento mencionado por la lógica @beep con el método de la sesión del cliente Mage::getSingleton('customer/session')->setBeforeAuthUrl($url); ayudó en la redirección a la página deseada. Espero que esto ayude

Respondido el 14 de enero de 13 a las 06:01

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.