Estou tentando criar uma página de perfil totalmente diferente (não a fornecida pelo Wordpress), pois o layout e a aparência da página de perfil padrão são "Wordpress" demais para os usuários. Agora, consigo apresentar uma página que pode modificar os metadados do usuário, como nome, sobrenome, cidade, CEP etc.
Agora, o que me surpreendeu foi mudar a senha do usuário. Existe alguma função interna do wordpress, digamos change_user_password ($ user_id, $ new_password)? Estou surpreso por não conseguir procurar nada que faça isso.
O pior é que estou fazendo um UPDATE wp_users SET user_pass = md5($new_password) WHERE ID = $user_id
, mas ficaria realmente surpreso se não houvesse função para este.
md5
para senhas no WordPress foi preterido (mas ainda é compatível com versões anteriores - na próxima vez que a senha de login do usuário for redistribuída e salva novamente). É melhor passar pela API para que o esquema de hash atual e mais complexo seja usado.