如何创建显示来自多个类别的帖子的页面

时间:2019-05-31 作者:Zak

正在创建一个显示多个类别中所有帖子的页面。例如,假设我希望将类别1、5和9中的所有帖子放在一起。页面上的帖子应该是这些类别中的任何一个,并且不需要是多个或全部。有可能做到这一点吗?

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

要在单个页面中显示自定义查询,需要创建新的页面模板并将其分配给页面。

在主题的主文件夹中创建一个文件,并将其称为多个类别。php在文件中粘贴以下代码

<?php
/* Template Name: Multiple Categories */

get_header();

$args = array(
    \'cat\' => \'1, 5, 9\',
    \'posts_per_page\' => -1,
);

$my_posts = new WP_Query( $args );

if( $my_posts->have_posts() ){
    while( $my_posts->have_posts() ){
        $my_posts->the_post();
        //Echo the post
    }
}
wp_reset_postdata();

get_footer();
创建一个新页面,并在模板字段中选择“多个类别”。

访问该页面时,您应该会看到这些类别中的任何一个类别的文章。模板文件和名称只是一个示例,可以随意更改,而无需使用此处列出的默认文件和名称https://developer.wordpress.org/themes/basics/template-hierarchy/

有关与类别相关的查询参数的更多详细信息,请参见此处:https://codex.wordpress.org/Class_Reference/WP_Query#Category_Parameters

相关推荐

Dropdown menu for categories

当我使用下面的代码时<?php wp_nav_menu( array(\'menu\' => \'categories\' )); ?> 我可以创建一个新的菜单来列出我创建的wordpress中的所有类别。我用它在页面中间列出所有类别。我现在的问题是:有没有一种简单的方法可以为存在的每个子类别创建下拉菜单?那么,当我点击一个特定的类别时,它的子类别会显示出来吗?