Tôi muốn đăng nhập một người dùng theo lập trình tới quản trị viên Magento. Trang quản trị nằm trong khung nội tuyến và nó phải tự động chuyển hướng đến trang tổng quan quản trị mà không cần xác thực. Tôi đã sử dụng một mã được tìm thấy trong một bài cổ và nó phù hợp với nguồn lõi magento. Mã này là:Kết nối quản trị magento lập trình không hoạt động
umask(0);
$app = Mage::app('default');
Mage::getSingleton('core/session', array('name' => 'adminhtml'));
// supply username
$user = Mage::getModel('core/factory')->getModel('admin/user')->loadByUsername($loginadmin);
if (Mage::getSingleton('adminhtml/url')->useSecretKey()) {
Mage::getSingleton('adminhtml/url')->renewSecretUrls();
}
$session = Mage::getSingleton('admin/session');
$session->setIsFirstVisit(false);
$session->setUser($user);
$session->setAcl(Mage::getResourceModel('admin/acl')->loadAcl());
Mage::dispatchEvent('admin_session_user_login_success',array('user'=>$user));
if ($session->isLoggedIn()) {
//Redirection vers le dashboard
$url = "index.php/admico/dashboard";
header('Location: '.$url);
}
Khi tôi var_dump()
dữ liệu, người dùng tồn tại và nó có tất cả các thông tin như firstname, id, vv và đó là tất cả chính xác. Mã bên trong if
cuối cùng và chuyển hướng đến 'index.php/admico/dashboard' để $session
được đăng nhập chính xác. Tuy nhiên, trang chủ hiển thị biểu mẫu kết nối như thể phiên không được đăng nhập và không phải là trang tổng quan quản trị viên.
Ai đó có thể giúp tôi tìm ra điều gì sai không?
Xin lỗi, nhưng nó không hoạt động:/ – Erlaunis