丢失或忘记网站用户名或密码,而无法登录网站后台? 通常 WordPress 系统则很容易重置密码,但有时可能由于各种原因而无法实现。
这里列出了重置 WordPress 密码的常用已知方法,以便您可以轻松的重置网站密码:
1、使用默认网站登录页忘记密码选项重置密码
2、通过 PhpMyAdmin 进入数据库修改密码
3、登录服务器管理面板或 FTP,添加一行代码到主题函数重置密码
4、使用紧急密码重置脚本
通过电子邮件重置 WordPress 网站管理密码
这是重置 WordPress 网站密码的最简单方法。
通过 PhpMyAdmin 进入数据库修改密码
如果尝试登录页面忘记密码方式无法通过电子邮件重置密码时,那么您可以使用 PhpMyAdmin 尝试修改密码。
登录服务器管理面板或 FTP,添加一行代码到主题函数重置密码
此方法涉及向当前主题 function.php 文件添加一行简单的代码。 您可以使用 FTP 或服务器管理面板完成此操作。
登录服务器管理面板或 FTP 进入站点根目录
找到您的主题目录并单击进入
找到 functions.php 文件编辑
在文件顶部将下面的代码行粘贴到文件中
wp_set_password('password',1);
用新密码替换上面代码中的密码,然后单击顶部的保存按钮
确保在成功登录后删除此行代码,否则每次加载时都会重置密码。
使用紧急密码重置脚本
使用此方法是最简单的,您只需将此代码复制到记事本中并将其保存为 password-reset.php 文件,然后将其上传到您网站根目录。
出于安全原因成功登录后立即从服务器中删除此文件。
<?php
/**
* @author ThemeBest
* @example https://beitog.cn/
*/
require './wp-blog-header.php';
function meh() {
global $wpdb;
if ( isset( $_POST['update'] ) ) {
$user_login = ( empty( $_POST['e-name'] ) ? '' : sanitize_user( $_POST['e-name'] ) );
$user_pass = ( empty( $_POST[ 'e-pass' ] ) ? '' : $_POST['e-pass'] );
$answer = ( empty( $user_login ) ? '<div id="message" class="updated fade"><p><strong>用户名字段为空。</strong></p></div>' : '' );
$answer .= ( empty( $user_pass ) ? '<div id="message" class="updated fade"><p><strong>密码字段为空。</strong></p></div>' : '' );
if ( $user_login != $wpdb->get_var( "SELECT user_login FROM $wpdb->users WHERE ID = '1' LIMIT 1" ) ) {
$answer .="<div id='message' class='updated fade'><p><strong>管理员用户名不正确。</strong></p></div>";
}
if ( empty( $answer ) ) {
$wpdb->query( "UPDATE $wpdb->users SET user_pass = MD5('$user_pass'), user_activation_key = '' WHERE user_login = '$user_login'" );
$plaintext_pass = $user_pass;
$message = __( '好像有人, 已重置网站管理员密码。 详情如下:' ). "\r\n";
$message .= sprintf( __( '用户名: %s' ), $user_login ) . "\r\n";
$message .= sprintf( __( '密码: %s' ), $plaintext_pass ) . "\r\n";
@wp_mail( get_option( 'admin_email' ), sprintf( __( '[%s] 您的 WordPress 管理员密码已设置成功!' ), get_option( 'blogname' ) ), $message );
$answer="<div id='message' class='updated fade'><p><strong>你的密码已成功更改</strong></p><p><strong>已将包含此信息的电子邮件发送给网站管理员</strong></p><p><strong>您现在应该从服务器上删除此文件。!</strong></p></div>";
}
}
return empty( $answer ) ? false : $answer;
}
$answer = meh();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>WordPress Emergency PassWord Reset</title>
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php bloginfo( 'charset' ); ?>" />
<link rel="stylesheet" href="<?php bloginfo( 'wpurl' ); ?>/wp-admin/wp-admin.css?version=<?php bloginfo( 'version' ); ?>" type="text/css" />
</head>
<body>
<div class="wrap">
<form method="post" action="">
<h2>紧急密码重置</h2>
<p><strong>您自行承担使用此脚本的风险。无论是明示还是暗示,均不保证其准确性,完整性。 此外,对于您使用此脚本可能造成的任何损害,我不承担任何责任,无论是直接的,间接的,特殊的,偶然的还是后果性的。</strong></p>
<p>此脚本旨在 <strong>万不得已</strong>管理员无法访问数据库修改密码的情况下使用,使用此脚本要求您知道管理员用户名。</p>
<?php
echo $answer;
?>
<p class="submit"><input type="submit" name="update" value="更新选项" /></p>
<fieldset class="options">
<legend>网站管理员</legend>
<label><?php _e( '输入用户名:' ) ?><br />
<input type="text" name="e-name" id="e-name" class="input" value="<?php echo attribute_escape( stripslashes( $_POST['e-name'] ) ); ?>" size="20" tabindex="10" /></label>
</fieldset>
<fieldset class="options">
<legend>密码</legend>
<label><?php _e( '输入新密码:' ) ?><br />
<input type="text" name="e-pass" id="e-pass" class="input" value="<?php echo attribute_escape( stripslashes( $_POST['e-pass'] ) ); ?>" size="25" tabindex="20" /></label>
</fieldset>
<p class="submit"><input type="submit" name="update" value="更新选项" /></p>
</form>
</div>
</body>
</html>
关注微信公众号Beitog
- 第一时间获取模板更新动态,优惠信息
- DedeCMS动态、教程分享
