J'essaie de créer une page de profil totalement différente (pas celle fournie par Wordpress), car la présentation et la convivialité de la page de profil par défaut sont trop "Wordpress" pour les utilisateurs. Maintenant, je réussis à présenter une page qui peut modifier les métadonnées de l'utilisateur comme le prénom, le nom, la ville, le code postal, etc.
Maintenant, ce qui m'a dérouté, c'est de changer le mot de passe de l'utilisateur. Existe-t-il une fonction wordpress intégrée, par exemple change_user_password ($ user_id, $ new_password)? Je suis surpris de ne pouvoir rien chercher qui puisse faire ça.
Le pire vient au pire que je fais UPDATE wp_users SET user_pass = md5($new_password) WHERE ID = $user_id
, mais je serais vraiment étonné s'il n'y a pas de fonction pour celui-ci.
la source
md5
pour les mots de passe dans WordPress est obsolète (mais toujours rétrocompatible - la prochaine fois que le mot de passe de connexion des utilisateurs sera ré-haché et ré-enregistré). Il est préférable de passer par l'API pour utiliser le schéma de hachage actuel et plus complexe.Réponses:
Voir la référence pour plus de détails.
la source
wp_update_user
entraîne l'exécution d'environ 14 requêtes.Un simple
wp_update_user(array('ID' => $userid, 'user_pass' => 'myNeWpaSSword'))
fera tout pour vous -wp_update_user()
(Codex) .Sur un sidenote: connaissez-vous le thème My Login (Plugin Wordpress) ? Il peut vous fournir une page de profil côté frontal.
la source