Question

J'ai un bloc if ($comment->user_id) pour choisir un commentaire admin par défaut gravatar (différent que celui d'un non-utilisateur). Mais je voudrais encore ce gravatar à utiliser si un commentaire utilisateur à l'aide de leur e-mail enregistrée, même s'ils commentent sans connecté. Quelle est la meilleure façon de tester cela?

EDIT

J'utilise déjà

 if ($comment->user_id){
            //comment by registered user
            $avatar = '/images/bird_comments_big.png';
            }else{
            //comment by none registered user
            $avatar = '/images/bird_comments_pink.png';
            }

avec

<div><?php echo get_avatar($comment, 70, get_bloginfo('template_url').$avatar); ?></div>

Si l'utilisateur est connecté en fait un commentaire, l'instruction if est en effet remplie. Toutefois, si l'utilisateur utilise son e-mail enregistrée (à savoir lié à leur connexion dans WP) sans apporter connecté, user_id n'est pas présent, et l'icône de l'utilisateur apparaît non enregistrés. user_id ne sont stockées que si l'utilisateur est connecté.

Je veux également tester si l'e-mail matchs donné un utilisateur enregistré, peu importe si elles sont connectés ou non.

Était-ce utile?

La solution 2

if ($comment->user_id || email_exists($comment->comment_author_email)){
            //comment by registered user
            $avatar = '/images/registered_user.png';
            }else{
            //comment by none registered user
            $avatar = '/images/non_registered_user.png';
            }

avec

<div><?php echo get_avatar($comment, 70, get_bloginfo('template_url').$avatar); ?></div>

Il semble à peu près aussi une façon succincte je peux comprendre.

Autres conseils

Vous pouvez simplement vérifier

if ($comment->user_id > 0){
//comment by registered user
}else{
//comment by none registered user
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top