Wordpress - What's the difference between wp_insert_user() and wp_create_user()
None. The whole source of wp_create_user()
is:
function wp_create_user($username, $password, $email = '') {
$user_login = esc_sql( $username );
$user_email = esc_sql( $email );
$user_pass = $password;
$userdata = compact('user_login', 'user_email', 'user_pass');
return wp_insert_user($userdata);
}
It just calls insert version almost immediately, basically a shorthand wrapper. As for why it exists - core works in mysterious ways and (short of hunting down developer by version control history and asking) there is rarely way to tell. :)
As per Codex
The wp_create_user function allows you to insert a new user into the WordPress database. It uses the $wpdb class to escape the variable values, preparing it for insertion into the database. Then the PHP compact() function is used to create an array with these values. To create a user with additional parameters, use wp_insert_user().
So the main difference would be that with wp_insert_user
you may pass more than just ($username, $password, $email)
. A full list of all the additional parameters for wp_insert_user can be found on its Codex page