在搜索结果页面显示搜到的文章数量,能给访客一个更好的搜索体验。在WordPress中,很多教程介绍的都是下面这种比较搓方法,在主题目录下的search.php的适当位置添加以下代码:


<h2 class="pagetitle">搜索关键字:
  <?php
  /* Search Count */ 
  $allsearch = &new WP_Query("s=$s&showposts=-1");
  $key = wp_specialchars($s, 1);
  $count = $allsearch->post_count;
  echo '<span class="search-terms">' . $key . '</span>';
  echo '<br />搜索到 ' . $count . ' 条结果';
  wp_reset_query(); ?>
</h2>

这种方法的原理是重新建立一次数据库读取操作,然后计算读取到的结果数。这种方法既要写一段长长的复杂的代码,又多出一次数据库操作,耗费资源又浪费时间。而且如果你指定了搜索某个分类,那么上面的代码统计就会出现错误,还需要重新修改。
我们可以用一种更简短的代码来获取搜索结果的文章数量,统计效果更加准确,不需要做太多的条件分享,在search.php的适当位置添加以下代码即可:


<?php
  global $wp_query;
  echo '搜到 ' . $wp_query->found_posts . ' 篇文章';
?>

这个代码更加简短,而且使用的是WordPress的原先建立的wp_query对象的值,省时省力!