wordpress自带搜索增加结果相关性代码

不管你是用过wordpress还是没有用过wp建站程序,有一点你必须知道:wordpress默认的搜索代码结果就是包含搜索词的文章、页面,按照时间或ID发布顺序排序;但是这样有一点非常的不好,不利于关键词的相关性,这一点非常的不方便。有时候你搜索一个关键词,出来好几页的结果?这怎么能是我们想要的呢?

 

增强wordpress搜索的相关性的方法:

只需要在当前主题的 functions.php 添加如下代码来增强 WordPress 搜索的相关性:

//wp搜索相关性
if(is_search()){
add_filter('posts_orderby_request', 'search_orderby_filter');
}
function search_orderby_filter($orderby = ''){
    global $wpdb;
    $keyword = $wpdb->prepare($_REQUEST['s']);
    return "((CASE WHEN {$wpdb->posts}.post_title LIKE '%{$keyword}%' THEN 2 ELSE 0 END) + (CASE WHEN {$wpdb->posts}.post_content LIKE '%{$keyword}%' THEN 1 ELSE 0 END)) DESC,
{$wpdb->posts}.post_modified DESC, {$wpdb->posts}.ID ASC";
}

上面的代码就是使得搜索的结构代码,先按照日志的标题的相关性排序,然后按照日志的内容,最后才是日的志修改时间和 ID,这样的修改之后,WordPress 搜索的结果相关性就提高了很多。

 

现在你再去用wp自带的搜索就好得多了,这是博主增加了wordpress相关性之后的效果截图,如下:

wordpress相关性搜索

我知道有一些看了截图之后会发现没有效果对吗?其实你就错了。之所以这些标题会出来,那是因为文章内容是含有“网站结构”这个词语的,wp搜索搜索的不仅仅是标题,还有文章内容,页面内容。而第一篇文章我就在它的结尾做了一个SEO网站结构优化策略的锚文本,当然可以搜索到它喽!不相信的,可以亲自打我的博客文章去看看。

    A+
发布日期:2017年02月19日 09:57:35  所属分类:WordPress
最后更新时间:2019-07-17 15:07:35
付杰
  • ¥ 79.0元
  • 市场价:129.0元
  • ¥ 189.0元
  • 市场价:269.0元
  • ¥ 199.0元
  • 市场价:899.0元
  • ¥ 999元
  • 市场价:4999元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:2   其中:访客  0   博主  0

  1. 头像 李甜 4

    这样做是可以增加相关性,赞一个!

  2. 头像 冯丹丹所 0

    发斯蒂芬