Như tất cả các ý kiến đã nêu trước đó, nó không nằm ngoài hộp. Dưới đây là một số gợi ý về nơi / những gì bạn có thể cần điều chỉnh:
Mage_Admin_Model_User
public function getStartupPageUrl()
{
$startupPage = Mage::getStoreConfig(self::XML_PATH_STARTUP_PAGE);
$aclResource = 'admin/' . $startupPage;
if (Mage::getSingleton('admin/session')->isAllowed($aclResource)) {
$nodePath = 'menu/' . join('/children/', explode('/', $startupPage)) . '/action';
$url = (string)Mage::getSingleton('admin/config')->getAdminhtmlConfig()->getNode($nodePath);
if ($url) {
return $url;
}
}
return $this->findFirstAvailableMenu();
}
Tôi chưa bao giờ thử nó nhưng đây dường như là phương pháp được gọi từ
Mage_Adminhtml_IndexController
và có IndexAction gọi hàm trên. Vì đây là quản trị viên, nên việc viết lại Mô hình có thể sẽ dễ dàng hơn.
/**
* Admin area entry point
* Always redirects to the startup page url
*/
public function indexAction()
{
$session = Mage::getSingleton('admin/session');
$url = $session->getUser()->getStartupPageUrl();
if ($session->isFirstPageAfterLogin()) {
// retain the "first page after login" value in session (before redirect)
$session->setIsFirstPageAfterLogin(true);
}
$this->_redirect($url);
}
Vì vậy, sửa đổi getStartupPageUrl () để URL của bạn dường như là nơi tốt nhất để thử điều này.
Đây chỉ là lý thuyết, tôi chưa thử, nhưng nếu bạn cần một mô-đun mẫu, tôi chắc chắn có thể chạy qua cái này và cung cấp nó.
Nếu mọi người dùng quản trị sẽ kết thúc trên cùng một trang, điều này khá dễ thực hiện, nếu có một số yếu tố động, sẽ khó hơn một chút để tạo điều kiện. Chúc may mắn!