¿Cómo mostrar el nombre de usuario si está conectado?

20 abr 2012, 20:11:59
Vistas: 133K
Votos: 23

Estoy trabajando en crear un texto que muestre 'Login' a los usuarios que no están conectados, y el nombre de usuario o nombre para mostrar cuando están conectados.

Parece que debería ser un problema fácil de resolver, y he encontrado los siguientes dos fragmentos de código en el codex de WordPress que hacen cada uno la mitad de lo que estoy buscando, pero no he descubierto cómo combinarlos (sin romper el sitio).

¿Es esta la dirección correcta o estoy muy equivocado?

Para verificar si el usuario está conectado y mostrar algo diferente según el caso:

<?php if ( is_user_logged_in() ) {
    echo '{código de nombre de usuario aquí}';
} else {
    echo 'Login';
}
?>

Para obtener y mostrar la información del usuario actual:

<?php global $current_user;
wp_get_current_user();
echo 'Nombre de usuario: ' . $current_user->user_login . "\n";
echo 'Nombre para mostrar: ' . $current_user->display_name . "\n";
?>
0
Todas las respuestas a la pregunta 1
1
54

Esto parece hacer lo que necesitas.

<?php global $current_user; wp_get_current_user(); ?>
<?php 
if ( is_user_logged_in() ) { 
  echo 'Nombre de usuario: ' . $current_user->user_login . "\n"; 
  echo 'Nombre para mostrar: ' . $current_user->display_name . "\n"; 
} else { 
  wp_loginout(); 
} ?>
20 abr 2012 20:23:32
Comentarios

Si is_user_logged_in() devuelve true, entonces probablemente no sea necesario usar wp_get_current_user();. Pude omitir eso y aún así mostrar el $current_user->display_name.

Martin_W Martin_W
18 may 2023 06:15:17