通过magento中的soap客户端登录

时间:2012-05-08 13:36:43

标签: magento soap

我想通过soap客户端创建magento登录,以便我们如何在magento中实现, 我在magento根文件夹中从这个文件创建一个文件,我想在调用这个文件时给出soap登录功能,我不想要这个特定文件的magento登录功能

1 个答案:

答案 0 :(得分:1)

我要感谢@inchoo的人们。 locked-out-from-magento-admin

这也可以单独运行Magento,只需要app / Mage.php路径存在。

<?php
/*
 * Create New Admin User
 * @author    Ivan Weiler, Inchoo <web@inchoo.net>
 */

//define USERNAME, EMAIL and PASSWORD and uncomment(#) this 3 lines
#define('USERNAME','inchoo');
#define('EMAIL','xyz@inchoo.net');
#define('PASSWORD','inchoo555');


if(!defined('USERNAME') || !defined('EMAIL') || !defined('PASSWORD')){
    echo 'Edit this file and define USERNAME, EMAIL and PASSWORD.';
    exit;
}

//load Magento
$mageFilename = 'app/Mage.php';
if (!file_exists($mageFilename)) {
    echo $mageFilename." was not found";
    exit;
}
require_once $mageFilename;
Mage::app();

try {
    //create new user
    $user = Mage::getModel('admin/user')
        ->setData(array(
            'username'  => USERNAME,
            'firstname' => 'John',
            'lastname'  => 'Doe',
            'email'     => EMAIL,
            'password'  => PASSWORD,
            'is_active' => 1
        ))->save();

} catch (Exception $e) {
    echo $e->getMessage();
    exit;
}

try {
    //create new role
    $role = Mage::getModel("admin/roles")
            ->setName('Inchoo')
            ->setRoleType('G')
            ->save();

    //give "all" privileges to role
    Mage::getModel("admin/rules")
            ->setRoleId($role->getId())
            ->setResources(array("all"))
            ->saveRel();

} catch (Mage_Core_Exception $e) {
    echo $e->getMessage();
    exit;
} catch (Exception $e) {
    echo 'Error while saving role.';
    exit;
}

try {
    //assign user to role
    $user->setRoleIds(array($role->getId()))
        ->setRoleUserId($user->getUserId())
        ->saveRelations();

} catch (Exception $e) {
    echo $e->getMessage();
    exit;
}

echo 'Admin User sucessfully created!<br /><br /><b>THIS FILE WILL NOW TRY TO DELETE ITSELF, BUT PLEASE CHECK TO BE SURE!</b>';
@unlink(__FILE__);