WordPress用户的密码是保存在wp_users数据表中的user_pass字段中的,保存的是已经加密的密码,密码的加密是通过Portable PHP password hashing framework类产生的,密码的形式是随机且不可逆,同一个明文的密码在不同时间,产生的密文也不一样,相对来说较为安全。
有时在WordPress主题开发过程中,我们可能会需要自己生成一个加密好的密码,然后保存到用户的user_pass字段中,这个时候我们可以使用下面的方法:
<?php
$password = 'abc';
global $wp_hasher;
if ( empty($wp_hasher) ) {
require_once( './wp-includes/class-phpass.php');
$wp_hasher = new PasswordHash(8, TRUE);
}
$encryption_password = $wp_hasher->HashPassword($password);
?>
其中的$encryption_password就是加密后的密码了,我们可以直接把他储存到数据表中。
如果不是必须直接操作数据去保存密码的话,其实我们可以使用wp_update_user()方法为指定用户设置或更新密码,使用这个方法的时候我们直接使用密码明文就可以了,不需要提前加密。使用方法如下:
$user_id='1';
$password = "12345678";
wp_update_user( array( 'ID' => $user_id, 'user_pass' => $password ) );
希望以上内容对您有所帮助。
WordPress日记主要承接WordPress主题定制开发、PSD转WordPress、WordPress仿站以及以WordPress为管理后端的小程序、APP,我们一直秉持“做一个项目,交一个朋友”的理念,希望您是我们下一个朋友。如果您有WordPress主题开发需求,可随时联系QQ:919985494 微信:18539976310