Mostrar el avatar del perfil de usuario cuando está conectado

31 dic 2014, 09:14:28
Vistas: 25.5K
Votos: 1

Estoy tratando de mostrar el avatar/imagen de perfil del usuario cuando está conectado, pero cuando uso esto:

<?php
    global $current_user;
    get_currentuserinfo();     // obtiene la información del usuario actual
    echo get_avatar( $current_user->ID, 64 );

?>

muestra el default_avatar_male.jpg, pero no quiero que se muestre nada a menos que el usuario esté conectado. Gracias por toda la ayuda.

0
Todas las respuestas a la pregunta 2
2

Obtén el correo electrónico del usuario actual y pásalo a la función get_avatar() cuando el usuario haya iniciado sesión, de esta manera:

<?php 
if ( is_user_logged_in() ) {
    $current_user = wp_get_current_user();
    if ( ($current_user instanceof WP_User) ) {
        echo 'Bienvenido : ' . esc_html( $current_user->display_name );
        echo get_avatar( $current_user->ID, 32 );
    }
}
31 dic 2014 15:13:44
Comentarios

Probé tu código y también funcionó tan bien como el de Rohil_PHPBeiginner mencionado arriba. Mi pregunta adicional que publiqué arriba es ¿cómo podría mostrarlo como: Bienvenido Tom "imagen de perfil"?

Dave_O Dave_O
31 dic 2014 19:42:12

Hola, por favor revisa la respuesta editada arriba

Amit Mishra Amit Mishra
1 ene 2015 08:38:45
2

Puedes envolver este código en una condición que si el usuario está logueado entonces muestre su foto de perfil y para eso puedes usar la función de WordPress is_user_logged_in.

Así que tu código será algo como esto:

<?php
    global $current_user;
    if ( is_user_logged_in() ):
        get_currentuserinfo();     
        echo get_avatar( $current_user->ID, 64 );
    endif;  
?>
31 dic 2014 09:30:22
Comentarios

¡Genial! Esto funcionó bien. ¿Cómo podría mostrar el nombre del usuario, o algo como: Bienvenido Tom "imagen de perfil"? Gracias de nuevo.

Dave_O Dave_O
31 dic 2014 19:37:08

Puedes usar wp_get_current_user.

Rohil_PHPBeginner Rohil_PHPBeginner
1 ene 2015 08:22:56