Morton 4 de diciembre de 2014 a las 10.59
   Imprimir artículo
elWebmaster.com

Como permitir el inicio de sesión con e-mail en tu WordPress


wordpress-widePor defecto, WordPress asigna nombres de usuario únicos a todos los usuarios registrados en el sitio web. Como son únicos, hay una chance de que el nombre de usuario que queremos ya esté en uso, por lo que deberemos pensar en otro y probablemente, olvidarnos de cúal era luego. Si no recordamos nuestro usuario, dificil será iniciar sesión, por eso la opción de hacerlo con nuestro e-mail es siempre bienvenida. ¿Cómo añadimos eso a nuestro sitio?

Necesitaremos hacer uso de la acción wp_authenticate que se ejecuta antes de que WordPress trate de autenticar al usuario. Desde aquì podemos cambiar el nombre de usuario y password que el usuario ha enviado.

Dentro de esta función tomaremos $username y buscaremos el e-mail del usuario. Si nos devuelve un objeto usuario entonces podremos cambiar el nombre de usuario por el nombre de usuario del objeto usuario descubierto.

add_action( ‘wp_authenticate’, ‘email_address_login’ );

function email_address_login( &$username, &$password )
{
$user = get_user_by( ‘email’, $username );

if( !empty( $user->user_login ) )
{
$username = $user->user_login;
}
}

Como esta es una acción, pasa los parámetros por referencia, definidos por el signo & en la lista de parametros de funciones. Esto quiere decir que no necesitamos devolver ningún valor de esta función, solo necesitamos cambiar el valor de las variables y las mismas serán devueltas automáticamente por la función.

Esto es todo ¡Esperamos que te haya sido de utilidad!

Fuente original del artículo: DZone
Traducción realizada por elWebmaster.com


Enviar a Del.icio.us Enviar a Meneame Enviar a Digg Enviar a Fresqui Enviar a Enchilame

Deja tu opinión

© 2007 - 2008 elWebmaster.com | Powered by Wordpress | Diseño CSS y XHTML válido. | Algunos íconos basados en FamFamFam Mini
Acceder