I am trying to create a totally different profile page (not the one provided by WordPress), since the layout and feel of the default profile page is too “WordPress” for the users. Now I am successful in being able to present a page that can modify user meta data like firstname, lastname, city, zip code, etc.
Now what stumped me is changing the password of the user. Is there any built-in wordpress function, say change_user_password($user_id, $new_password)? I’m surprised that I can’t look for anything that does this.
Worse comes to worst I’m doing an UPDATE wp_users SET user_pass = md5($new_password) WHERE ID = $user_id
, but I would be really amazed if there is no function for this one.
See reference for details.
A simple
wp_update_user(array('ID' => $userid, 'user_pass' => 'myNeWpaSSword'))
will do everything for you –wp_update_user()
(Codex).On a sidenote: are you aware of the Theme My Login (WordPress Plugin)? It can provide you with a front-end side profile page.