ユーザーをプログラムでmagento adminにログします。管理ページはiframe内にあり、認証なしで自動的に管理ダッシュボードにリダイレクトする必要があります。私は古代の郵便で見つけられたコードを使用し、それはマゼンタのコアソースと一致します。コードは次のとおりです。プログラムでmagentoの管理接続が機能しない
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);
}
私はデータをvar_dump()
すると、ユーザーが存在し、それがFIRSTNAME、IDなどのようなすべての情報を持っており、それがすべて正しいのです。コードは最後のif
の中に入り、 'index.php/admico/dashboard'にリダイレクトされるので、$session
は正しくログインされますが、とにかく、フロントページにはセッションがログインしていないかのように接続フォームが表示されます。管理者
誰かが間違ったことを理解してくれますか?
申し訳ありませんが、それは動作しません:/ – Erlaunis