由于评论头像的有和无,致使我们的界面看起来杂乱无章,这里我们说下剔除无头像评论:

首先(在functions.php里加入如下代码:)
  1. <?php  
  2. function no_gravatar($email) {   
  3.           $emailaddress = md5($email);  
  4.           $url = 'http://www.gravatar.com/avatar/' . $emailaddress . '?d=404';  
  5.           //从gravatar处调用默认头像   
  6.           $headers = @get_headers($url); if (!preg_match("|200|"$headers[0])) {  
  7.           //进行匹配 $is_no_avatar = FALSE;//如果这个邮件地址没有生成默认头像,则判断为有头像用户   
  8.           } else {   
  9.           $is_no_avatar = TRUE;  
  10.           //反之则是没头像了   
  11.           }   
  12.           return $is_no_avatar;   
  13.           }  
  14. ?>  

然后在你调用评论排行的地方找到你的hook,类似foreach ($comments as $comment)

在后面加上
  1. <?php  
  2. if (no_gravatar($comment-&gt;comment_author_email)) {  
  3. //直到foreach结束处,再加上   
  4. }?>  
例子(如下代码红色部分)
  1. <span style="color: #ff0000;">$i =1;</span>  
  2. <?php  
  3. foreach ($wall as $comment)  
  4. if (no_gravatar($comment->comment_author_email)) {  
  5. $width = round(40 / ($maxNum / $comment->cnt),2); if$comment->comment_author_url ) $url = $comment->comment_author_url; else $url=”#”; $avatar = get_avatar( $comment->comment_author_email, $size = ’36’); $result = ‘<li>《a rel=”nofollow” target=_blank class=”no-ce” href=”‘.$comment->comment_author_url.'” title=”‘.$comment->comment_author.’:’.$comment->cnt.’条评论”>’.$avatar.'</a></li>’; $output .= $result;  
  6. $i++;  
  7. if($i>10)//10改成你想要的数字  
  8. break;  
  9. }  
  10. }  
  11. ?>  

最后检查你的foreach前面的代码是否有 LIMIT 18,将数字改大一点,多调试,尽量够在显示的比如30条内足够筛选出数量来显示你的排行头像。

正文到此结束

留言

1条评论
  1. Gravatar 头像

    QQ游客 回复

    好羞射,文章真的好赞啊,顶博主!!!

LEAVE A REPLY

  • face face face face face face face face face face face face face face face face face face face face face face face face face