Estoy tratando de crear una página de perfil totalmente diferente (no la proporcionada por Wordpress), ya que el diseño y la sensación de la página de perfil predeterminada es demasiado "Wordpress" para los usuarios. Ahora tengo éxito en poder presentar una página que puede modificar los metadatos del usuario como nombre, apellido, ciudad, código postal, etc.
Ahora lo que me dejó perplejo es cambiar la contraseña del usuario. ¿Hay alguna función incorporada de wordpress, por ejemplo, change_user_password ($ user_id, $ new_password)? Me sorprende no poder buscar nada que haga esto.
Lo peor es lo peor que estoy haciendo UPDATE wp_users SET user_pass = md5($new_password) WHERE ID = $user_id
, pero me sorprendería mucho si no hay una función para este.
fuente
md5
para las contraseñas en WordPress está en desuso (pero sigue siendo compatible con versiones anteriores; la próxima vez que el usuario inicie sesión la contraseña se volverá a cifrar y se volverá a guardar). Es mejor pasar por API para que se use el esquema de hashing actual y más complejo.Respuestas:
Ver referencia para más detalles.
fuente
wp_update_user
da como resultado aproximadamente 14 consultas en ejecución.Un simple
wp_update_user(array('ID' => $userid, 'user_pass' => 'myNeWpaSSword'))
hará todo por usted -wp_update_user()
(Codex) .En una nota al margen: ¿conoce el tema My Login (Wordpress Plugin) ? Puede proporcionarle una página de perfil lateral frontal.
fuente