Mostrare l'avatar del profilo utente quando si è loggati

31 dic 2014, 09:14:28
Visualizzazioni: 25.5K
Voti: 1

Sto cercando di mostrare l'avatar/immagine del profilo dell'utente quando è loggato, ma quando uso questo codice:

<?php
    global $current_user;
    get_currentuserinfo();     
    echo get_avatar( $current_user->ID, 64 );
?>

viene mostrato il default_avatar_male.jpg, ma non voglio che venga mostrato nulla a meno che l'utente non sia loggato. Grazie per l'aiuto.

0
Tutte le risposte alla domanda 2
2

Ecco come passare l'email dell'utente corrente nella funzione get_avatar() quando l'utente è loggato:

<?php 
if ( is_user_logged_in() ) {
    $current_user = wp_get_current_user();
    if ( ($current_user instanceof WP_User) ) {
        echo 'Benvenuto : ' . esc_html( $current_user->display_name );
        echo get_avatar( $current_user->user_email, 32 ); // Passa l'email invece dell'ID
    }
}
31 dic 2014 15:13:44
Commenti

Ho provato anche il tuo codice e ha funzionato altrettanto bene come quello di Rohil_PHPBeiginner sopra. La mia domanda aggiuntiva, che ho postato sopra, è come potrei visualizzarlo come: Benvenuto Tom "immagine profilo" ?

Dave_O Dave_O
31 dic 2014 19:42:12

Ehi, per favore controlla la risposta modificata sopra

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

Puoi racchiudere questo codice in una condizione se l'utente è loggato allora mostra la foto del profilo e per questo puoi usare la funzione di WordPress is_user_logged_in.

Quindi il tuo codice sarà qualcosa come questo:

<?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
Commenti

Fantastico! Ha funzionato bene. Come potrei visualizzare il nome dell'utente, o qualcosa tipo: "Benvenuto Tom" con l'immagine del profilo? Grazie ancora.

Dave_O Dave_O
31 dic 2014 19:37:08

Puoi usare wp_get_current_user.

Rohil_PHPBeginner Rohil_PHPBeginner
1 gen 2015 08:22:56