簡體   English   中英

magento的自定義管理員登錄腳本

[英]Custom admin login script for magento

我有一個自定義腳本,我想為此使用Magento創建一種單點登錄。

我已經找到創建會話並以客戶身份登錄的代碼

$session = Mage::getSingleton( 'customer/session' );
try {
    $session->login( $username, $password ); 
....

但是使用它不起作用

 Mage::getSingleton( 'admin/session' );//adminhtml does also not work

基本上,我想要的是:

  • 讓用戶從自定義登錄頁面登錄到Magento管理員

  • 跟蹤他們的新創建的會話

對我來說,另一種選擇是讓用戶登錄到Magento,如果他們隨后轉到我的腳本,我將看到該用戶以Admin身份登錄。 我找到了用於此的代碼,但是如果用戶首先進入我的腳本,這在某種程度上是行不通的。 這是代碼:

$session = Mage::getSingleton('core/session', array('name'=>'adminhtml'));
if(Mage::getSingleton('admin/session')->isLoggedIn()){
....

如果他們首先登錄magento,則上面的代碼有效。 但是,如果他們先進入我的腳本,那么我會看到以下代碼行創建了一個名為adminhtml的cookie:

Mage::getSingleton('core/session', array('name'=>'adminhtml'

因此,如果用戶在此之后登錄到Magento,然后轉到我的腳本,則該cookie仍然存在,並且檢查是否已登錄返回false,而實際上已登錄了另一個具有相同名稱的sessioncookie。

請幫幫我! 謝謝!

嘗試這個

 $session = Mage::getSingleton('admin/session');
$session->setIsFirstVisit(true);
$session->setUser($user);
$session->setAcl(Mage::getResourceModel('admin/acl')->loadAcl());
Mage::dispatchEvent('admin_session_user_login_success',array('user'=>$user));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM