Magento:如何将登录用户重定向到主页
问题描述:
我正在使用Magento 1.7,我想在登录主页后重定向所有客户端。Magento:如何将登录用户重定向到主页
我正在使用extension关闭该网站给未登录的用户。我没有使用默认登录页面,而是使用了facebook连接按钮的CMS页面。
现在,用户使用Facebook登录后,magento正在加载相同的页面,而没有facebook连接按钮。
我看到这个thread,但没有找到AccountManager来修改它。它在哪里?此外,我不确定这会起作用,因为我的情况下的重定向不会发生在客户的仪表板上,而是发生在我创建的cms页面上。
我可以检查用户是否登录并将他/她重定向到主页的方式(以及在代码中的位置)?
在此先感谢
答
一种方法是钩住**customer_login**
事件,并在客户会话设置afterAuthUrl。
...
public function customerLogin(Varient_Event_Observer $observer) {
/* @var $session Mage_Customer_Model_Session */
$session = Mage::getSingleton('customer/session');
$session->setAfterAuthUrl(Mage::getBaseUrl());
}
您可以在AccountController
_loginPostRedirect
方法(app/code/core/Mage/Customer/controllers/AccountController.php)
查看Magento的逻辑。根据实施,你会注意到它也可以发送一个引用者请求参数(注意:它必须是base64
编码通过Mage::helper('core')->urlEncode())
答
我相信有一个由AITOC做的扩展,做你正在尝试做的。如果你有兴趣购买,而不是建立。通过@beep逻辑与重定向帮助需要的页面客户会话Mage::getSingleton('customer/session')->setBeforeAuthUrl($url);
方法提到使用事件
答
。 希望这有助于