提高WordPress搜索体验
来源:程序员人生 发布时间:2013-12-31 09:23:14 阅读次数:3836次
本篇文章讲的是提高WordPress自带的搜索功能的体验,使用Google CSE的可以飘过。
随着站内信息的增多,站内搜索成为了每个网站必不可少的功能。为了提高搜索体验,很多人采用Google Custom Search Engine服务作为站内搜索,可是使用搜索引擎进行站内搜索存在页面收录问题,因此对于新站和是不实用的,因此使用WordPress提供的搜索功能是最好的选择。相对于Google CSE,WordPress的搜索功能有两个明显不足:1.不能显示被检索到的条目数量;2.关键词没有高亮。我们可以通过修改模板来添加这两个功能。
显示检索到的条目数量
打开主题的search.php(不同的主题可能有所不同),把下面的代码添加到适当的地方。
< ?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> — '.$count.' articles';
wp_reset_query();
?>
这样例如在搜索“bolo”时,检索到10篇文章,在将会提示:bolo — 0 articles。
高亮关键词
在得到搜索结果以后,我们通常需要浏览一下条目的摘要,以选择一条自己觉得最符合要求的进行点击。高亮关键词,能是人们更快地找到自己所需要的条目。要增加这个功能,同样修改search.php。
//查找< ?php the_title(); ?>,替换成< ?php echo $title; ?>
//在< ?php echo $title; ?>前增加以下代码:
< ?php
$title = get_the_title();
$keys= explode(" ",$s);
$title = preg_replace('/('.implode('|', $keys) .')/iu', '<strong class="search-excerpt">