快生活 - 生活常识大全

博客导航实现最新评论自动排第一功能


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