En el desarrollo de un sitio web en WordPress, la gestión de usuarios es un aspecto fundamental. Uno de los elementos que puede resultar útil para los administradores es la capacidad de mostrar la última fecha de inicio de sesión de cada usuario. Esta información no solo permite un mejor control de accesos, sino que también mejora la seguridad del sitio.
¿Por qué es importante mostrar la última fecha de inicio de sesión?
Conocer cuándo un usuario ha accedido por última vez a su cuenta puede ser esencial para diversas razones:
- Seguridad: Identificar cuentas inactivas puede ayudar a prevenir accesos no autorizados.
- Auditoría: Mantener un registro de actividad puede ser útil para auditorías de seguridad.
- Soporte: Facilita la resolución de problemas para los usuarios que tienen dificultades para acceder a sus cuentas.
Además, esta información puede ser valiosa para enviar recordatorios a los usuarios que no han iniciado sesión durante un tiempo prolongado.
Métodos para mostrar la última fecha de inicio de sesión
Existen varias maneras de implementar esta funcionalidad en WordPress. Aquí exploraremos dos de las más comunes: mediante plugins y mediante código personalizado.
Uso de plugins
Una de las formas más sencillas de añadir la fecha de último inicio de sesión es a través de plugins. Existen varios en el repositorio de WordPress que pueden hacerlo. Algunos de los más populares son:
- WP Last Login: Este plugin permite mostrar la última fecha de inicio de sesión en el perfil de usuario.
- Simple History: Además de mostrar la última fecha de inicio de sesión, ofrece un registro completo de la actividad del usuario. Descarga nuestra guía de mantenimiento web ¡Gratis!Guía gratuita para autónomos y pequeñas empresas que quieren evitar sustos y mejorar el rendimiento de su web.
Para instalar un plugin, simplemente ve a la sección de Plugins en tu panel de administración de WordPress, busca el plugin deseado, instálalo y actívalo. Después de esto, podrás configurar el plugin desde su página de ajustes.
Código personalizado
Si prefieres no depender de un plugin, puedes añadir esta funcionalidad mediante código personalizado. Aquí te mostramos cómo hacerlo:
function track_user_login( $user_login, $user ) {
update_user_meta( $user->ID, 'last_login', current_time( 'mysql' ) );
}
add_action( 'wp_login', 'track_user_login', 10, 2 );
function show_last_login( $user ) {
$last_login = get_user_meta( $user->ID, 'last_login', true );
echo 'Último inicio de sesión: ' . esc_html( $last_login ) . '
';
}
add_action( 'show_user_profile', 'show_last_login' );
add_action( 'edit_user_profile', 'show_last_login' );
Este código utiliza el hook `wp_login` para guardar la fecha de último inicio de sesión cada vez que un usuario inicia sesión. Luego, se muestra esta información en el perfil del usuario.
Cómo visualizar la información en el panel de administración
Una vez que hayas implementado la funcionalidad para rastrear el último inicio de sesión, es posible que desees visualizar esta información en el panel de administración. Para hacerlo, puedes modificar la lista de usuarios en el área de administración.
function add_last_login_column( $columns ) {
$columns['last_login'] = 'Último Inicio de Sesión';
return $columns;
}
add_filter( 'manage_users_columns', 'add_last_login_column' );
function show_last_login_column( $value, $column_name, $user_id ) {
if ( 'last_login' == $column_name ) {
return get_user_meta( $user_id, 'last_login', true );
}
return $value;
}
add_action( 'manage_users_custom_column', 'show_last_login_column', 10, 3 );
Este código añade una nueva columna en la lista de usuarios, mostrando la última fecha de inicio de sesión de cada uno.
Consideraciones de seguridad y rendimiento
Al implementar cualquier funcionalidad que rastree la actividad del usuario, es importante tener en cuenta la seguridad y el rendimiento del sitio. Asegúrate de que el código esté optimizado y no cause lentitud en el sitio. Además, considera las implicaciones de privacidad al almacenar información de inicio de sesión.
Mantenimiento de los datos
Es recomendable establecer un sistema de mantenimiento de datos para eliminar registros antiguos. Esto no solo ayuda a mejorar el rendimiento, sino que también es una buena práctica de seguridad. Puedes programar una tarea cron en WordPress para eliminar datos de inicios de sesión que sean demasiado antiguos.
