快生活 - 生活常识大全

博客教你如何实现智能排名网址导航站


  今天逛了一下李学江大神的博客,发现这个功能特别不错,于是转载过来了跟大家分享。
  今天终于抽出时间,把代码和教程分享给大家。我所构建的网址导航主要分为以下几个模块:访客网站自动排名第一模块、知名博客模块、人气博客模块、博客大全模块、边栏模块。
  下面分模块给大家介绍:
  一、访客网站自动排名第一模块
  通过调取博客留言者的名字和网址,并去重,按照留言时间顺序排列,最近代链接的留言排在第一位(留言者不填写链接则不显示)
  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-->
  其中100表示显示100个最新访客,这个数值可以自定义,一定不能为空,要不然会出错,最起码要大于0以上。
  二、知名博客模块
  显示一定时期内在本站留言比较活跃的用户网站。
  <!--?php--><!--?php-->
  三、人气博客
  显示一定时期内在本站留言数最多的用户网站。
  <!--?php--><!--?php-->
  四、博客大全
  调用你网站的友情链接,由于主题差异,每个网站的调用方法可能不尽相同,如果不懂的话,你可以资讯主题作者。
  五、边栏
  调用主题边栏,在后台小工具中添加你想要显示的内容。
  PS:
  1、如果你正在使用知更鸟Begin主题,以上代码全部适用,非知更鸟Begin主题,通过本教程你只能实现最近访客访客自动排名第一功能,如果感兴趣,你也可以参照这篇文章:《WordPress博客如何利用最新评论实现类似导航网站自动排第一功能》。
  2、各位在使用的时候,会发现知名博客和人气博客显示的内容与本站有些诧异,如果你希望和本站显示的一样,你可以找到/wp-content/themes/begin/inc/inc.php文件,将约2013至1268行代码替换成以下代码。
  //读者排行
  functiontop_comment_authors($amount=98){
  global$wpdb;
  $prepared_statement=$wpdb-&gt;prepare(
  ‘SELECT
  COUNT(comment_author)AScomments_count,comment_author,comment_author_url,comment_author_email,MAX(comment_date)aslast_commented_date
  FROM‘.$wpdb-&gt;comments.’
  WHEREcomment_author!=""ANDcomment_type=""ANDcomment_approved=1ANDuser_id=""
  GROUPBYcomment_author
  ORDERBYcomments_countDESC,comment_authorASC
  LIMIT%d’,
  $amount);
  $results=$wpdb-&gt;get_results($prepared_statement);
  $output=‘
  <div class=""top-comments"">’;</div>
  foreach($resultsas$result){
  $c_url=$result-&gt;comment_author_url;
  $output.=‘
  <div class=""lx8""></div>
  <div class=""top-author""></div>
  <div class=""top-comment""><a href=""‘" .="" url=""." c_url="" target=""_blank"" rel=""external"><div class=""author-url""><strong>‘.$result-&gt;comment_author.‘</strong></div></a></div>
  <div class=""top-comment"">’.human_time_diff(strtotime($result-&gt;last_commented_date)).‘前来过</div>
  ’;
  }
  $output.=‘
  <div class=""clear""></div>’;
  echo$output;
  }
  functiontop_comments($number=98){
  global$wpdb;
  $counts=wp_cache_get(‘mostactive’);
  if(false===$counts){
  $counts=$wpdb-&gt;get_results("SELECTCOUNT(comment_author)AScnt,comment_author,comment_author_url,comment_author_email
  FROM{$wpdb-&gt;prefix}comments
  WHEREcomment_date&gt;date_sub(NOW(),INTERVAL90DAY)
  ANDcomment_approved=‘1’
  ANDcomment_author_email!=‘example@example.com’
  ANDcomment_author_email!="
  ANDcomment_author_url!="
  ANDcomment_type="
  ANDuser_id=‘0’
  GROUPBYcomment_author_email
  ORDERBYcntDESC
  LIMIT$number");
  }
  $mostactive=‘
  <div class=""top-comments"">’;</div>
  if($counts){
  wp_cache_set(‘mostactive’,$counts);
  foreach($countsas$count){
  $c_url=$count-&gt;comment_author_url;
  $mostactive.=‘
  <div class=""lx8""></div>
  <div class=""top-author""></div>
  <div class=""top-comment""><a href=""‘" .="" url=""." c_url="" target=""_blank"" rel=""external"><div class=""author-url""><strong>‘.$count-&gt;comment_author.‘</strong></div></a></div>
  <div class=""top-comment"">留下’.$count-&gt;cnt.’个脚印</div>
  ’;
  }
  $mostactive.=‘
  <div class=""clear""></div>’;
  echo$mostactive;
  }
  }
  if(zm_get_option(‘meta_delete’)){}else{requireget_template_directory().‘/inc/meta-delete.php’;}
  requireget_template_directory().‘/inc/meta-boxes.php’;
  requireget_template_directory().‘/inc/show-meta.php’;
  然后使用以下CSS文件。
  &lt;?php
  /*
  TemplateName:博客导航
  */
  if(!defined(‘ABSPATH’)){exit;}
  ?&gt;
  <!--?php--><!--?php-->
  &lt;linkrel="stylesheet"href="<!--?php-->/css/sites.css"/&gt;<!--?php-->
  <style type=""text/css"">
  .favorites-top{
  margin-top:10px;
  }
  .breadcrumb,
  .yheader{
  display:none;
  }
  #primary {
  float: left;
  }
  #sidebar {
  float: right;
  }
  </style>
  <style type=""text/css"">
  .top-comments {
  margin: -5px 0 0 0;
  }
  .top-comments img {
  float: left;
  height: auto;
  max-width: 100%;
  width: auto;
  }
  .top-comments .lx8 {
  float: left;
  min-height: 1px;
  width: 16.6666666666666%;
  padding: 2px;
  }
  .top-author {
  background: #fff;
  margin: 5px;
  padding: 0 0 10px 0;
  border: 1px solid #ddd;
  }
  .top-comment {
  color: #999;
  text-align: center;
  }
  .author-url {
  width: 100%;
  padding: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  }
  .comment-authors {
  padding: 0 10px;
  }
  .dh_title{
  background: #fff;
  margin: 0 0 10px 0;
  padding: 10px;
  border: 1px solid #ddd;
  box-shadow: 0 0 1px rgba(0,0,0,.04);
  border-radius: 2px;
  }
  .dh_title h3{
  font-size: 18px;
  margin-left:10px;
  }
  .dh_title .dh_blog{
  margin:10px 0;
  }
  .dh_title .dh_more{
  position: absolute;
  top: 5px;
  right: 20px;
  }
  }
  article{
  background:#fff;
  }
  #sites-widget-one h3 {
  font-size: 18px;
  background: #fff;
  width: 100%;
  height: 30px;
  line-height: 40px;
  padding: 0 20px;
  border-bottom: 0px solid #ddd;
  }
  .widget ul{
  width: 100%;
  }
  .widget_links li{
  float: left;
  width: 20% !important;
  border:0px;
  }
  .widget_links a{
  border: 1px solid #fff;
  </style>
  <div class=""favorites-top""></div>
  <div class=""top-date"></div>
  &lt;?phpthe_title(‘
  <h1 class=""favorites-title"">’,‘</h1>’);?&gt;
  <span id="localtime"></span>
  <script type=""text/javascript"">
  function showLocale(objD){
  var str,colorhead,colorfoot;
  var yy = objD.getYear();
  if(yy<1900) yy = yy+1900;
  var MM = objD.getMonth()+1;
  if(MM<10) MM = ‘0‘ + MM;
  var dd = objD.getDate();
  if(dd<10) dd = ‘0‘ + dd;
  var hh = objD.getHours();
  if(hh<10) hh = ‘0‘ + hh;
  var mm = objD.getMinutes();
  if(mm<10) mm = ‘0‘ + mm;
  var ss = objD.getSeconds();
  if(ss<10) ss = ‘0‘ + ss;
  var ww = objD.getDay();
  if ( ww==0 ) colorhead="<font color="#FF0000">";
  if ( ww > 0 && ww < 6 ) colorhead="<font color="#373737">";
  if ( ww==6 ) colorhead="<font color="#008000">";
  if (ww==0) ww="星期日";
  if (ww==1) ww="星期一";
  if (ww==2) ww="星期二";
  if (ww==3) ww="星期三";
  if (ww==4) ww="星期四";
  if (ww==5) ww="星期五";
  if (ww==6) ww="星期六";
  colorfoot="</font>"
  str = colorhead + yy + "年" + MM + "月" + dd + "日 " + hh + ":" + mm + ":" + ss + " " + ww + colorfoot;
  return(str);
  }
  function tick()
  {
  var today;
  today = new Date();
  document.getElementById("localtime").innerHTML = showLocale(today);
  window.setTimeout("tick()", 1000);
  }
  tick();
  </script>
  <div class=""tianqi"></div>
  <iframe allowtransparency=""true"" frameborder=""0"" width=""385"" height=""75"" scrolling=""no"" src=""//tianqi.2345.com/plugin/widget/index.htm?s=1&z=1&t=0&v=0&d=3&bd=0&k=&f=&q=1&e=1&a=1&c=54511&w=385&h=96&align=left""></iframe>
  <div class=""clear""></div>
  <div id=""primary"" class=""content-area""></div>
  <main id=""main"" class=""site-main"" role=""main""></main>
  <div class=""dh_pc""></div>
  每当在本站评论时填写网址,贵站将自动排在第一位
  <span class=""dh_more""><a href=""https://lixuejiang.com/fangke"">more</a></span>
  <!--?php--><!--?php-->
  <article class=""dh_title""></article>
  <h3>知名博客</h3>
  <div class=""clear""></div>
  <!--?php--><!--?php-->
  <article class=""dh_title""></article>
  <h3>人气博客</h3>
  <div class=""clear""></div>
  <div class=""dh_blog""></div>
  <!--?php--><!--?php-->
  <!--–--><!--!–-->
  <div id=""sites-widget-one"" class=""sites-widget""></div>
  <!--?php--><!--?php-->
  <div class=""clear""></div>
  <!--–--><!--!–-->
  &lt;?php
  $taxonomy=‘favorites’;
  $terms=get_terms($taxonomy);foreach($termsas$cat){
  $catid=$cat-&gt;term_id;
  $args=array(
  ‘showposts’=&gt;100,
  ‘meta_key’=&gt;‘sites_order’,
  ‘orderby’=&gt;‘meta_value’,
  ‘order’=&gt;‘date’,
  ‘tax_query’=&gt;array(array(‘taxonomy’=&gt;$taxonomy,‘terms’=&gt;$catid,‘include_children’=&gt;false))
  );
  $query=newWP_Query($args);
  if($query-&gt;have_posts()){?&gt;
  <article class=""dh_title"" data-wow-delay=""0.3s""></article>
  <h3><!--?php echo="" cat-=""-->name;?&gt;<!--?php--></h3>
  <div class=""dh_blog""></div>
  <div class=""sites-5″"></div>
  <!--?php while="" query-=""-->have_posts()):$query-&gt;the_post();?&gt;<!--?php-->
  <!--?php if="" post-=""-->ID,‘sites_img_link’,true)){?&gt;<!--?php-->
  <!--?php sites_img_link="sites_nofollow(get_post_meta($post-"-->ID,‘sites_img_link’,true));?&gt;<!--?php-->
  <span class=""sites-title" wow="" data-wow-delay=""0s""></span>
  <figure class=""picture-img"><!--?php if="" else=""--><!--?php--></figure>
  &lt;ahref="<!--?php echo="" sites_img_link=""-->"target="_blank"rel="externalnofollow"&gt;<!--?php--><!--?php--><!--?php-->
  <!--?php else=""--><!--?php-->
  <!--?php sites_link="sites_nofollow(get_post_meta($post-"-->ID,‘sites_link’,true));?&gt;<!--?php-->
  <span class=""sites-title" wow="" data-wow-delay=""0s"">&lt;ahref="<!--?php echo="" sites_link=""-->"target="_blank"rel="externalnofollow"&gt;<!--?php--><!--?php--><!--?php--></span>
  <!--?php--><!--?php-->
  <!--?php--><!--?php-->
  <div class=""clear""></div>
  <!--?php--><!--?php-->
  <!--?php--><!--?php-->
  &lt;!–备用
  <article class=""sites"></article>
  <div class=""sites-cats""></div>
  <span class=""sites-cat"">分类名称</span>
  <span class=""sites-more""><a href=""文字替换为网址分类链接地址"">更多</a></span>
  <div class=""sites-link""></div>
  <ul class=""sites-5″ list-paddingleft-2"></ul>
  &lt;?php
  $args=array(‘tax_query’=&gt;array(array(‘taxonomy’=&gt;‘favorites’,‘field’=&gt;‘id’,‘terms’=&gt;explode(‘,’,830))),‘posts_per_page’=&gt;100);
  query_posts($args);while(have_posts()):the_post();
  ?&gt;
  <!--?php if="" post-=""-->ID,‘sites_link’,true)){?&gt;<!--?php-->
  <!--?php sites_link="get_post_meta($post-"-->ID,‘sites_link’,true);?&gt;<!--?php-->
  <ul class=" list-paddingleft-2"><li>&lt;ahref="
  <!--?php echo="" sites_link=""-->"target="_blank"rel="externalnofollow"&gt;<!--?php--><!--?php--><!--?php--></li></ul>
  <!--?php else=""--><!--?php-->
  &lt;?phpthe_title(sprintf(‘
  <ul class=" list-paddingleft-2"><li><a href=""%s"" rel=""bookmark"">’,esc_url(get_permalink())),‘</a>
  </li><li>’);?&gt;
  </li></ul>
  <!--?php--><!--?php-->
  <!--?php--><!--?php-->
  <!--?php--><!--?php-->
  <div class=""clear""></div>
  –&gt;
  <div id=""sidebar"" class=""widget-area""></div>
  <div class=""wow" data-wow-delay=""0.5s""></div>
  <!--?php if="" :=""--><!--?php-->
  <aside id=""add-widgets"" class=""widget"></aside>
  <h3 class=""widget-title""><em class=""be"></em>添加小工具</h3>
  <div class=""textwidget""></div>
  &lt;ahref="<!--?php echo=""-->widgets.php"target="_blank"&gt;为"网址侧边栏"添加小工具<!--?php-->
  <div class=""clear""></div>
  <!--?php--><!--?php-->
  <!--?php--><!--?php-->
  注意,本代码仍然只适用于知更鸟Begin主题。
  本文所有权归李学江博客所有,转载请注明来源:https://lixuejiang.com/wordpress/2496.htm
网站目录投稿:山瑶