wordpressadmin

Create an admin user programmatically in WordPress


Recently I had a client come to me to build a new website. They had also forgotten all their login details, but they did have FTP access.

How do you create an admin user programmatically in WordPress?


Solution

  • This will create an admin user if placed in a themes functions.php file. Please change the first three variables as needed.

    /* 
    * Create an admin user silently
    */
    
    add_action('init', 'xyz1234_my_custom_add_user');
    
    function xyz1234_my_custom_add_user() {
        $username = 'username123';
        $password = 'pasword123';
        $email = 'drew@example.com';
    
        if (username_exists($username) == null && email_exists($email) == false) {
    
            // 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');
        }
    }