将帖子拆分成两个单独的流

时间:2016-08-28 作者:Steve

我有一个博客,记录了我去年在印度探险时的旅行经历(这是一个令人惊叹的地方!)。我即将返回另一次旅行,希望使用同一个博客。

然而,不知何故,我想把去年的旅行和今年的旅行分开。

我已经标记了去年的所有帖子,是否有办法只显示2016年的帖子作为默认主页,并在菜单或其他地方有指向2015年帖子的链接?

还是有其他方法来实现这一点?

1 个回复
最合适的回答,由SO网友:bynicolas 整理而成

假设如下

您使用的是WP default Post类型,当您说标记时,您的意思是您使用的是类别,而不是标记系统,您至少有以下类别2015和2016,而且您已经对所有帖子进行了相应的分类,您使用的是WP的默认blogroll如果我认为您的设置有误,可能需要进行调整,但您肯定可以过滤blogroll中显示的内容。您需要为此修改WP查询。(下面我举个例子)

但在处理查询之前,您需要创建一个菜单并选择要添加到菜单中的类别
这是在中完成的Appearance -> Menus -> Categories

这些类别将是你的档案,所以一定要把它们分类好,否则你以后会错过一些帖子(不是丢失,只是隐藏)。

通过对每个帖子进行分类,您将拥有一个帖子的存档,并根据帖子所在的类别进行过滤。

所以现在你想要一个干净的博客。为了实现这一点,我们需要修改主查询。

这就是你能做到的。

add_action( \'pre_get_posts\', \'my_custom_blog\' );
function my_custom_blog( $wp_query ){

  if( is_home() ){ // Our custom query will affect only the blogroll

    $wp_query->set( \'category_name\', \'2016\' ); // category name is the slug of the category

  }
}
这将有效地从你的博客卷中删除所有内容,并且只显示in 2016年类别。因此,如果您的类别为空,则不会显示任何内容。

假设明年你有另一次旅行,你只需对未来的帖子进行分类,然后更改查询category_name 对于2017. 然后,您将向菜单添加另一个链接。此链接适用于2016类别。