由于评论头像的有和无,致使我们的界面看起来杂乱无章,这里我们说下剔除无头像评论:
首先(在functions.php里加入如下代码:)
- <?php
- function no_gravatar($email) {
- $emailaddress = md5($email);
- $url = 'http://www.gravatar.com/avatar/' . $emailaddress . '?d=404';
- //从gravatar处调用默认头像
- $headers = @get_headers($url); if (!preg_match("|200|", $headers[0])) {
- //进行匹配 $is_no_avatar = FALSE;//如果这个邮件地址没有生成默认头像,则判断为有头像用户
- } else {
- $is_no_avatar = TRUE;
- //反之则是没头像了
- }
- return $is_no_avatar;
- }
- ?>
然后在你调用评论排行的地方找到你的hook,类似foreach ($comments as $comment)
在后面加上
- <?php
- if (no_gravatar($comment->comment_author_email)) {
- //直到foreach结束处,再加上
- }?>
例子(如下代码红色部分)
- <span style="color: #ff0000;">$i =1;</span>
- <?php
- foreach ($wall as $comment)
- if (no_gravatar($comment->comment_author_email)) {
- { $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;
- $i++;
- if($i>10)//10改成你想要的数字
- break;
- }
- }
- ?>
最后检查你的foreach前面的代码是否有 LIMIT 18,将数字改大一点,多调试,尽量够在显示的比如30条内足够筛选出数量来显示你的排行头像。
正文到此结束
版权声明:本文基于《知识共享署名-相同方式共享 3.0 中国大陆许可协议》发布,转载请遵循本协议!!
QQ游客
好羞射,文章真的好赞啊,顶博主!!!