跳到主要内容

默认情况下,WordPress按相反的时间顺序显示博客文章(先显示新文章),但是有时您可能需要上下移动特定文章。

尽管感觉好像没有办法在WordPress中执行此操作,但您会惊讶地发现可以轻松地使用多种方式更改过帐顺序。

在本文中,我们将向您展示4种不同的方法来重新排序WordPress中的博客文章。您可以选择一种看起来更轻松且适合您的解决方案。

4种简单的方法来重新排序wordpress中的博客文章
4种简单的方法来重新排序wordpress中的博客文章

为什么要重新排序WordPress中的博客文章?

如果您只是开始创建博客,则无需立即重新排序博客文章。但是,随着内容的增长,您可能需要探索不同的方法来在整个网站上推广内容。

其中之一是使特定帖子在首页,博客页面,最新帖子或存档页面上更加突出显示。

现在的问题是,WordPress通常按相反的时间顺序显示您的博客文章。没有选择只是简单地上下移动帖子。

这是否意味着您不能将较旧的文章带到首页?还是从最近的帖子中删除较新的文章?

一点都不。

有多种解决方法可以让您做到这一点。根据您的需要,可以选择适合您要求的方法。

让我们看一下可以轻松地对WordPress网站上的博客文章重新排序的一些方法。

1.更改帖子的发布日期

这是最简单的方法,可让您使用内置的WordPress功能重新排序帖子。

如您所知,WordPress根据发布日期以相反的时间顺序显示帖子(先显示新帖子)。更改帖子的发布日期也会更改其在列表中的显示位置。

更改帖子的发布日期
更改帖子的发布日期

例如,如果您想发布一个较旧的帖子,则必须将其日期更改为较新的日期。同样,如果您想将帖子下移,则可以将其日期更改为较早。

只需编辑您要重新排序的帖子,然后在帖子编辑屏幕上单击“文档”面板下的发布日期。

更改帖子的发布日期
更改帖子的发布日期

这将弹出一个日期和时间弹出窗口,您可以在其中更改帖子的发布日期和时间。更改日期/时间后,单击“更新”按钮以保存更改。

您需要选择与其他帖子相关的日期。

例如,如果您想在3月8日发布的另一篇文章之前显示一个较旧的文章,则需要将该帖子的发布日期更改为3月9日。

2.使用帖子类型顺序插件(拖放选项)

如果您想重新排序帖子,但又不想更改其发布日期,那么此方法适合您。

首先,您需要安装并激活Post Types Order插件。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。

激活后,您需要访问设置»发布类型顺序页面以更改插件的设置。

使用帖子类型顺序插件
使用帖子类型顺序插件

在这里,您需要选择要启用插件的帖子类型。之后,只需单击“保存设置”按钮以存储您的更改。

现在,您可以转到帖子»所有帖子页面,只需拖放帖子即可对其重新排序。

使用帖子类型顺序插件
使用帖子类型顺序插件

3.在WordPress中使用便利贴功能

许多用户只想对博客文章进行重新排序,以突出显示博客文章作为特色内容。WordPress带有实现此目的的默认功能,称为“粘性帖子”。

粘性帖子功能使您可以在博客页面上的所有其他帖子之上突出显示一个帖子。

只需编辑您想要固定在顶部的博客文章。在帖子编辑屏幕上,选中“文档”面板下“粘贴到首页”选项旁边的框。

在wordpress中使用便利贴功能
在wordpress中使用便利贴功能

之后,单击“更新”按钮以保存您的更改。

现在,您可以访问您的网站,并且您会看到所选帖子固定在顶部。根据您的主题,您的即时贴会以不同的方式突出显示。

在wordpress中使用便利贴功能
在wordpress中使用便利贴功能

4.使用代码修改WordPress查询(高级)

此方法要求您将代码添加到WordPress网站。如果您以前没有做过,请参阅我们的指南,了解如何在WordPress中复制和粘贴代码。

如果您是高级用户,并且想要自定义发布顺序,则可以修改默认的WordPress查询。

例如,看一下此代码段。它允许您按时间顺序显示帖子(先显示旧帖子)。

//function to modify default WordPress queryfunctionwpb_custom_query( $query) {
// Make sure we only modify the main query on the homepage      if( $query->is_main_query() && ! is_admin() && $query->is_home() ) {
// Set parameters to modify the query        $query->set( 'orderby', 'date');        $query->set( 'order', 'DESC');    }}
// Hook our custom query function to the pre_get_posts add_action( 'pre_get_posts', 'wpb_custom_query');

此代码仅修改默认WordPress查询中的orderby和order参数。

但是,由于某些插件或主题已经修改了默认查询,因此该代码有时可能无法按预期工作。要解决此问题,可以使用如下supress_filters参数:

//function to modify default WordPress queryfunctionwpb_custom_query( $query) {
// Make sure we only modify the main query on the homepage      if( $query->is_main_query() && ! is_admin() && $query->is_home() ) {
// Set parameters to modify the query        $query->set( 'orderby', 'date');        $query->set( 'order', 'DESC');        $query->set( 'suppress_filters', 'true');    }}
// Hook our custom query function to the pre_get_posts add_action( 'pre_get_posts', 'wpb_custom_query');

该oderby参数带有许多选项。请参阅WP Query Codex页面上的选项的完整列表。

回到顶部