Función personalizada para registro de usuario en wp?

2

Tengo una plantilla personalizada para el registro de usuarios. Quiero usar una función para insertar usuarios. ¿Puedo llamar directamente a la función wp_insert_user ()?

    
pregunta Kathir 09.05.2011 - 08:49

1 respuesta

5

Sí, puedes pero debes incluir registration.php para la validación algo como:

//Need registration.php for data validation
require_once( ABSPATH . WPINC . '/registration.php');
$firstname = sanitize_text_field( $form_data['firstname'] );
$lastname = sanitize_text_field( $form_data['lastname'] );
$username = sanitize_text_field( $form_data['username'] );
$email = sanitize_text_field( $form_data['email'] );
//Add usernames we don't want used
$invalid_usernames = array( 'admin' );
//Do username validation
$username = sanitize_user( $username );
if ( !validate_username( $username ) || in_array( $username, $invalid_usernames ) ) {
    echo 'Username is invalid.';
}
if ( username_exists( $username ) ) {
    echo 'Username already exists.';
}
//Do e-mail address validation
if ( !is_email( $email ) ) {
    echo 'E-mail address is invalid.';
}
if (email_exists($email)) {
    echo 'E-mail address is already in use.';
}
//Everything has been validated, proceed with creating the user
//Create the user
$user_pass = wp_generate_password();
$user = array(
    'user_login' => $username,
    'user_pass' => $user_pass,
    'first_name' => $firstname,
    'last_name' => $lastname,
    'user_email' => $email
    );
$user_id = wp_insert_user( $user );

/*Send e-mail to admin and new user - 
You could create your own e-mail instead of using this function*/
wp_new_user_notification( $user_id, $user_pass );
    
respondido por el Bainternet 09.05.2011 - 11:26

Lea otras preguntas en las etiquetas