(转自boke112导航和李学江博客)我们做独立博客导航站的,一般都会有一个最新点入功能,大部分都是根据来访者的IP,自动把最新访客的博客排在第一位。而boke112导航使用的最新访客却不是根据来访IP排行,而是根据最新评论/留言来自动排第一位。换句话就是说只要来访者在本站评论/留言,该访客的博客就会自动排在第一位。
实现的方法也比较简单,其实就是通过SQL查询语句,查出最新评论的访客昵称及网址,然后去掉重复的记录即可。
具体代码操作步骤如下:
1、把以下代码放入到所用主题的functions.php最后一个%>。
- //最新评论排第一
- function Autofirst($af){
- global $wpdb;
- $queryaf=“select comment_author, comment_author_url, comment_date from $wpdb->comments where comment_ID in (select max(comment_ID) from $wpdb->comments where comment_approved=’1′ and comment_author_url !=” and user_id=’0′ GROUP BY comment_author_email) ORDER BY comment_date DESC LIMIT $af”;
- $wally = $wpdb->get_results($queryaf);
- foreach ($wally as $commentaf){
- $tmpy= “<li><a target=\”_blank\” href=\””.$commentaf->comment_author_url.“\”>”.$commentaf->comment_author.“</a></li>”;
- $outputy .= $tmpy;
- }
- $outputy = “<ul>”.$outputy.“</ul>”;
- echo $outputy ;
- }
其中输出的样式可以自定义,毕竟每一个博客的样式都不一样,这个就靠自己发挥了,只需要在以上代码中的<ul>中添加一个class属性即可。
2、把以下代码放入需要显示最新访客的地方,如留言板。
- <?php Autofirst(2);?>
其中2表示显示2个最新访客,这个数值可以自定义,一定不能为空,要不然会出错,最起码要大于0以上。
此时,我们的Wordpress博客导航已经能够实现最新评论自动排第一的功能了,赶紧试试吧。效果图:
PS:只要是Wordpress博客的,都可以实现这个功能。
如果想显示其他类型的样式,我们只需要把第一步代码中的$tmpy修改一下即可,如可以改成显示头像的,改成友情链接的,也可以改成读者墙样式的,具体就靠大家发挥了。
亲爱的:若该文章解决了您的问题,可否收藏+评论+分享呢?
文章评论 本文章有个评论