如何让WordPress站点的搜索结果按时间排序?

人来到这世界后,命运注定了他必须要拼搏,奋斗,坚持,勇敢地走下去,走出属于自己的道路,没有人能不劳而获。

默认情况下,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');

更多改变 WordPress 站点搜索结果的做法请参考『如何实现 WordPress 搜索结果显示指定的文章分类』或想要更加强大的搜索功能请参考『WordPress 强大搜索功能如何实现?安装 Ivory Search 插件』。

到此这篇关于如何让WordPress站点的搜索结果按时间排序?就介绍到这了。跟别人过不去就是跟自己过不去更多相关如何让WordPress站点的搜索结果按时间排序?内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: WordPress