WordPress实现搜索结果按时间排序方法

无评论

作者照片

By 霜天

一般WordPress搜索结果排序都是根据所谓的“权重”排序,标题中出现关键词比文章中出现关键词的文章排名高,这就会导致刚发布的相关文章WordPress实现搜索结果按时间排序方法。

具体做法如下:

$args = array(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’s\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’=>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’服务器\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’paged\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’ => $paged);

修改为

$args = array(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’s\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’=>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’服务器\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’orderby\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’=>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’date\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’paged\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’ => $paged);

即可。

其中 orderby=date 还可以修改为以下:

orderby=modified 按修改时间排序

orderby=ID 按文章 ID 排序

orderby=comment_count 按评论最多排序

orderby=title 按标题排序

orderby=rand 随机排序

有些站长还想让 WordPress 站点的搜索结果页都按时间或者其他方式排序,只需要将以下代码添加到主题的 functions.php 文件即可:

//搜索结果按时间排序

function search_filter_page($query) {

if (!$query->is_admin && $query->is_search) {

$query->set(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’orderby\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’date\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’);

}

return $query;

}

add_filter(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’pre_get_posts\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’search_filter_page\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’);

发表评论