在iOS应用中使用wordpress用户帐户

时间:2012-03-12 21:40:29

标签: iphone ios wordpress authentication content-management-system

嘿所以我正在构建一个iOS应用程序。第一个窗口是登录屏幕,人们使用wordpress博客的登录信息登录。 我考虑过xml-rpc,但它不允许从手机注册。 然后我看了使用RESTful api,但我不知道如何将它连接到wordpress db以检查用户名和密码是否正确。 有很多关于wordpress的东西设置了RESTful API,但它们似乎都没有帮助我正在尝试做的事情。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

想出怎么做。你可以用xml-rpc来做。这是我的请求插件中的代码,如果有人需要它:

function register_user($args){

    require_once( ABSPATH . WPINC . '/registration.php' );

/* Check if users can register. */
$registration = get_option( 'users_can_register' );

    /* If user registered, input info. */


        $userdata = array(
            'user_pass' => esc_attr( $args[2] ),
            'user_login' => esc_attr( $args[0] ),
            'first_name' => esc_attr( "" ),
            'last_name' => esc_attr( "" ),
            'nickname' => esc_attr( "" ),
            'user_email' => esc_attr( $args[1] ),
            'user_url' => esc_attr( "" ),
            'aim' => esc_attr( "" ),
            'yim' => esc_attr( ""),
            'jabber' => esc_attr( "" ),
            'description' => esc_attr( "" ),
            'role' => get_option( 'default_role' ),
        );

        if ( !$userdata['user_login'] ){
            $error = __('A username is required for registration.', 'frontendprofile');
            return "user-invalid";      
        }elseif ( username_exists($userdata['user_login']) ){
            $error = __('Sorry, that username already exists!', 'frontendprofile');
            return "user-used";
        }elseif ( !is_email($userdata['user_email'], true) ){
            $error = __('You must enter a valid email address.', 'frontendprofile');
            return "email-invalid"; 
        }elseif ( email_exists($userdata['user_email']) ){
            $error = __('Sorry, that email address is already used!', 'frontendprofile');
            return "email-used";
        }
        else{
            $new_user = wp_insert_user( $userdata );
            wp_new_user_notification($new_user, $user_pass); //send the user an email with the information

            return "success";
        }

     update_user_meta( $args[0]->ID, 'setup', "0" );


}