¿Quieres mostrar la fecha de registro del usuario en WordPress? A menudo los sitios de membresía y foros populares muestran la fecha de registro del usuario en el perfil como “miembro desde 2015”. En este artículo, vamos a cubrir cómo mostrar la fecha de registro de usuario en WordPress.
¿Dónde y cómo desea mostrar la fecha de registro de usuario?
Algunos de ustedes pueden simplemente querer mostrar la fecha de registro de un usuario en las columnas del administrador de la página de Usuarios. Esto le dará una visión rápida de cuando un usuario se unió a su sitio web y le permitirá ordenar por fecha de registro.
Otro escenario de uso es mostrar la fecha de registro de un usuario en la página ‘Editar Perfil’. Esto permitirá a cualquier administrador y al propio usuario ver cuándo se unió a su sitio web.
Por último, pero probablemente el escenario de uso más popular es cuando se desea mostrar la fecha de registro del usuario en su perfil público en el front-end de su sitio web.
Echemos un vistazo a cómo puede hacer todo esto.
Añadir columna de fecha de registro en la página de usuarios en el área de administrador
Lo primero que debe hacer es instalar y activar el plugin Admin Columns. Una vez activado, debe visitar Ajustes “ Columnas de administrador para configurar el plugin.
En la pestaña de columnas de administrador, haga clic en usuarios y luego haga clic en el botón añadir columna.
A continuación, seleccione “Registrado” en el menú desplegable Tipo y haga clic en el botón de actualizaciones de la tienda.
Ahora puede visitar la pantalla de usuarios donde verá una nueva columna llamada “Registrado” que muestra la fecha en la que un usuario se registró en su sitio WordPress.
Vea qué otras cosas puede hacer para añadir y personalizar columnas de administrador en WordPress.
Mostrar campo de fecha de registro en el perfil de usuario
Para mostrar la fecha de registro en la página de edición del perfil, tendrá que subir un plugin personalizado a su sitio web.
Simplemente cree un nuevo archivo en su ordenador utilizando un editor de texto como el Bloc de notas y guárdelo como membersince.php
en su escritorio.
A continuación, abra el archivo y pegue el siguiente código en su interior.
<?php /* Plugin Name: Member Since Plugin URI: https://www.wpbeginner.com Description: Adds registration date on edit user profile screen. Version: 1.0 Author: WPBeginner */ namespace ShowMemberSince; add_action( 'plugins_loaded', 'ShowMemberSince\init' ); /** * Adding needed action hooks */ function init(){ foreach( array( 'show_user_profile', 'edit_user_profile' ) as $hook ) add_action( $hook, 'ShowMemberSince\add_custom_user_profile_fields', 10, 1 ); } /** * Output table * @param object $user User object */ function add_custom_user_profile_fields( $user ){ $table = '<h3>%1$s</h3> <table class="form-table"> <tr> <th> %1$s </th> <td> <p>Member since: %2$s</p> </td> </tr> </table>'; $udata = get_userdata( $user->ID ); $registered = $udata->user_registered; printf( $table, 'Registered', date( "M Y", strtotime( $registered ) ) ); } ?>
Guarda tu archivo y luego súbelo a tu sitio WordPress.
Finalmente puedes conectarte a tu sitio WordPress usando un cliente FTP y luego ir a la carpeta /wp-content/plugins/
. Selecciona el archivo membersince.php de tu ordenador y luego súbelo.
Ahora puedes ir a la página de plugins de WordPress y activar este plugin en tu sitio web.
Eso es todo. Comprueba que todo funciona editando el perfil de un usuario en tu área de administrador de WordPress, y verás la fecha de registro del usuario.
Cómo mostrar la fecha de registro del usuario en su sitio web
En este método, vamos a utilizar un shortcode simple para mostrar cualquier fecha de registro de los usuarios en el front-end de su sitio de WordPress.
Primero tendrá que añadir el siguiente código en el archivo functions. php de su tema o en un plugin específico del sitio.
function wpb_user_registration_date($atts, $content = null ) { $userlogin = shortcode_atts( array( 'user' => FALSE, ), $atts ); $uname = $userlogin['user']; if ($uname!== FALSE) { $user = get_user_by( 'login', $uname ); if ($user == false) { $message ='Sorry no such user found.'; } else { $udata = get_userdata( $user-ID ); $registered = $udata->user_registered; $message = 'Member since: ' . date( "d F Y", strtotime( $registered ) ); } } else { $message = 'Please provide a username.'; } return $message; } add_shortcode('membersince', 'wpb_user_registration_date');
A continuación, puede mostrar la fecha de registro de un usuario simplemente utilizando el shortcode como este:
[membersince user=peter]
Sustituye peter por el nombre de usuario que quieras mostrar.
Esperamos que este artículo le haya ayudado a mostrar la fecha de registro en los perfiles de usuario de WordPress. Puede que también quieras ver nuestro tutorial sobre cómo añadir campos adicionales al perfil de usuario en el registro de WordPress.
Si te ha gustado este artículo, suscríbete a nuestro canal de YouTube para ver tutoriales en vídeo sobre WordPress. También puedes encontrarnos en Twitter y Facebook.
Tom
Hello Nice code thank you but is it possible with the shortcode to show the register date of the user which actually logged in?
WPBeginner Support
For tracking user activity like logins, you would want to use a plugin like one in our article below:
https://www.wpbeginner.com/plugins/how-to-monitor-user-activity-in-wordpress-with-simple-history/
Administrador
joody
this code still works today 2021-12-7, great!
WPBeginner Support
Glad the code still works!
Administrador
Ralph
TYPO: There is one typo in the code in method 3 that results in the error of date always showing the same value: On line 37 is
$udata = get_userdata( $user-ID );
while it should be:
$udata = get_userdata( $user->ID );
(Notice the arrow instead of the dash)
WPBeginner Support
Thanks for pointing that out, the typo should be fixed
Administrador
Dave S
Great post! I installed the plug in and now I can see when my customers subscribed to my site!!
WPBeginner Support
Thank you, glad our recommendation could help
Administrador
chergui djaouida
please i need to introduce the date of registration of a user in a php code not by a shortcode how to do?
Isabelle Laplante
«Showing Registration Date Field in User Profile» costum Plugin works but do not show the real date… For every users, the added information is«Member since: Jun 2015» … Wich is not the case… Can you help?
WPBeginner Support
The code converts date into relative date. If you want to show proper date then change the line:
1-click Use in WordPress
with this
1-click Use in WordPress
Administrador
Jody Hockley
Hi,
Thanks for the plugin, nice easy fix for a simple problem.
I have just used the second option to show in the User profile page. However it only show month and year, not the day. How would I alter the plugin code to show the day too?
Thanks for your help, much appreciated
Jody
Gerard
Very nice :).
I needed only first code snippet (which works).
Just one little note: on line 37 you should make it ‘$user->ID” you forgot the ‘>’, else it shows notices when debuggin.
Thank you.
Davis
Admin Columns plugin developer requires $60US to sort by registration date. If you are a site manager, find a better solution. WP should include this ultra-basic functionality in all WP installs.
Hemang Rindani
Insightful article. WordPress is the most user friendly CMS that can create complex websites with very less or no technical knowledge. It comes with rich set of modules and plugins that can transform your digital dream into a reality. However, it is important to identify the secured and authenticated tools for your WordPress website to improve the overall website security. WP is capable of handling multiple sites with multiple users which has been a requirement of big organizations. WP provides some great features to manage user accounts and prevent the website from unauthorized access using certain plugins with your website. There are also tools to enhance the user experience like the one described in the article to provide a great personal feel to the user.
Thanks for the article.
Patrick Catthoor
This looked like a feature I could use for my website. So, I tried all 3 methods.
Method 1 works like a charm, but both methods 2 and 3 always provide the same date: 01 January 1970. Something must be wrong, but I couldn’t figure out what.
Any ideas?
Celito C. Macachor
I realize this is an old issue, but I just came across this article after a recent search. Great, insightful articles, but I have the same concern as Patrick’s. In the all users list, the registration date is correct. While it is not critical, only one date (July 2016) is shown for all users in the Member since field. Has this issue been resolved? Thanks for any updated information.