En ésta entrada vamos a ver cómo agregar la funcionalidad autocomplete=»off» para los campos de usuario y clave en el formulario de login al backend de WordPress.
Esto nos puede resultar útil en caso de que queramos proteger nuestro sitio si accedemos a él desde ordenadores públicos o donde sepamos que pueden entrar otras personas.
Hay que tener en cuenta que el atributo autocomplete es nuevo en HTML5 y algunos navegadores no lo soportan. Por otro lado también hay que tener en cuenta, que aunque tu navegador lo soporte, si decides recordar contraseña en el sitio, guardará tu preferencia y te mostrará el usuario/clave para poder acceder.
No está de más usarlo, ya que en determinadas ocasiones puede resultar útil y añade seguridad a tu sitio. Vamos a ver cómo establecer los campos de usuario y contraseña con el atributo autocomplete=»off» sin tocar el núcleo de WordPress, para evitar que se sobrescriba ésta funcionalidad en futuras actualizaciones.
Añadimos éste código a nuestro archivo functions.php:
<?php
// Autocomplete Off in wp-login
function my_theme_autocomplete_off() {
wp_register_script( 'autocomplete-off', get_template_directory_uri() . '/js/autocomplete_off.js', array('jquery'), '1.0' );
wp_enqueue_script( 'autocomplete-off' );
}
add_action( 'login_form', 'my_theme_autocomplete_off' );
Cómo puede observarse, añadiremos un archivo JS (dependiente de jQuery) solamente en el action login_form, de esta manera sólo lo usaremos cuando es necesario, es decir, en la página de login, evitando recargar el resto de la web aunque sea sólo unos pocos KB.
En nuestro archivo JS añadiremos este código:
/* autocomplete off en wp-login */
jQuery(document).ready(function($){
$('#user_login').attr('autocomplete','off');
$('#user_pass').attr('autocomplete','off');
});
Con esto ya lo tendríamos implementado en nuestro tema.