Créer un nouvel utilisateur automatiquement via functions.php dans WordPress

J'ai besoin d'ajouter un nouvel utilisateur avec le rôle d'administrateur via le code, et j'ai trouvé ce code:

add_action('init', 'add_user');
function add_user() {
    $username = 'username123';
    $password = 'pasword123';
    $email = '[email protected]';

    //Create the new user
    $user_id = wp_create_user( $username, $password, $email );

    //Get current user object
    $user = get_user_by( 'id', $user_id );

    //Remove role
    $user->remove_role( 'subscriber' );

    //Add role
    $user->add_role( 'administrator' );
}

ici

Mais quand je l'ai ajouté dans functions.php, j'ai eu cette erreur :

 Fatal error: Call to a member function remove_role() 
 on a non-object in ..../functions.php on line ...

J'ai aussi essayé ce code:

 function fb_wp_insert_user() {
$user_data = array(
'ID' => '',
'user_pass' => wp_generate_password(),
'user_login' => 'dummy',
'user_nicename' => 'Dummy',
'user_url' => '',
'user_email' => '[email protected]',
'display_name' => 'Dummy',
'nickname' => 'dummy',
'first_name' => 'Dummy',
'user_registered' => '2010-05-15 05:55:55',
'role' => get_option('default_role') //Use default role or another role, e.g. 'editor'
);
$user_id = wp_insert_user( $user_data );
}
add_action( 'admin_init', 'fb_wp_insert_user' );

J'ai changé de rôle par défaut pour adminstrator mais quand j'ai parcouru les utilisateurs, j'ai trouvé cet utilisateur sans aucun rôle.

OriginalL'auteur techno | 2013-11-07