twosclash
  • 0
Мастер

Как узнать, что комментарий написан пользователем?

  • 0

У меня есть if ($comment->user_id) блок, чтобы выбрать граватар комментария администратора по умолчанию (отличный от непользовательского). Но я все же хотел бы, чтобы этот граватар использовался, если пользователь комментирует, используя свой зарегистрированный адрес электронной почты, даже если он комментирует, не входя в систему. Каков наилучший способ проверить это?

РЕДАКТИРОВАТЬ

я уже использую

 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';
            }

с участием

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

Если пользователь вошел в систему и делает комментарии, оператор if действительно выполняется. Однако, если пользователь использует свой зарегистрированный адрес электронной почты (т.е. привязанный к своему логину в WP) без входа в систему, user_id его нет, и появляется значок для незарегистрированного пользователя. user_id сохраняется только в том случае, если пользователь вошел в систему.

Я также хочу проверить, соответствует ли указанный адрес электронной почты зарегистрированному пользователю, независимо от того, вошли ли они в систему или нет.

Share
  1. Вы можете просто проверить

    if ($comment->user_id > 0){
    //comment by registered user
    }else{
    //comment by none registered user
    }
    
    • 0
  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';
                }
    

    с участием

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

    Кажется, примерно таким кратким, как я могу понять.

    • 0

Оставить ответ

You must login to add an answer.