显示主类别和1个子类别中的所有帖子

时间:2018-01-03 作者:D. Dan

我定义了一个自定义帖子类型,用于使用WP内置的库功能创建库。

register_post_type( \'my_gallery\',
    array(
        \'labels\' => array(
            \'name\' => __( \'Gallery\', \'my-child-theme\' ),
            \'singular_name\' => __( \'Gallery\', \'my-child-theme\' )
        ),
        \'public\' => true,
        \'supports\' => array( \'title\', \'editor\', \'custom-fields\', \'thumbnail\' )
    )
);
还为此特定CPT创建了自定义分类法,其中包含一个主类别“Galleries”,以及一个子类别“History”:

-Galleries
    -History
我在子主题中还有一个名为分类库的模板。php正常工作,它显示了图库中的所有帖子,以及历史中的所有帖子。

现在我想要的是:显示主类别中的所有帖子,并显示子类别历史记录,页面最多有12个元素。

我该怎么做?

Edit 基于@mmm-s答案,如何获取一个数组中的所有元素:

    $all_the_items = array();
    while ( have_posts() ) : the_post();
          $t = get_the_terms( $post->ID , \'my-taxonomy\' );
                if ($t[0]->parent == 0){
                $properties = array(
                    \'title\' => get_the_title(),
                    \'link\' => get_the_permalink() );
                 $all_the_items[] = $properties;
}
endwhile; wp_reset_query();
    $o = get_queried_object();
            $children = get_term_children($o->term_id, $o->taxonomy);
            foreach ($children as $child) {
                $this_term = get_term($child);
                $properties = array(
                    \'title\' => $this_term->name,
    \'link\' => site_url(\'/\' . $this_term->taxonomy . \'/\' . $this_term->slug . \'/\')
                );
    }

1 个回复
SO网友:mmm

要获取查询对象的子对象,可以使用以下代码taxonomy-galleries.php

$o = get_queried_object();
$children = get_term_children($o->term_id, $o->taxonomy);
$children 是一个术语标识符数组,那么您只需要循环这个。

结束

相关推荐

Custom TaxonomyTemplate

我创建了一个自定义分类品牌,并在各种帖子中添加了一些品牌。我还创建了一个名为taxonomy brands的文件。php,它似乎工作得很好。如果我访问www.domain。com/brands/adidas然后我可以看到所有阿迪达斯品牌的帖子。然而,当我访问www.domain时。com/brands/I收到404错误。我希望此页面显示所有可用品牌。(阿迪达斯、耐克、asics等)请帮助Richard