微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Wordpress中显示当前类别的帖子

如何解决在Wordpress中显示当前类别的帖子

我已经创建了一个自定义帖子类型,该模板可以在模板中显示帖子,并带有显示类别的导航。

在导航中选择类别时,如何仅显示当前类别的帖子?

我尝试过的方法不起作用:

register_post_type( 'products',array(
        'labels' => array(
        'name' => __( 'Products' ),'singular_name' => __( 'Products' )),'public' => true,'has_archive' => true,'rewrite' => array('slug' => 'products'),'taxonomies' => array('category'),'supports' => array( 'title','editor','thumbnail' ),)
);

模板以显示来自CPT的所有帖子

<?PHP
    /* Template Name: Products */
    get_header();
?>

<main role="main">
    <?PHP $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID),'full' );?>
    <div class="jumbotron" data-parallax="scroll" data-image-src="<?PHP echo $thumb['0'];?>">
        <div class="overlay"></div>
    </div>

    <div class="main-content-wrap">
        <div class="container">
            <div class="row">
                <div class="col-md-3">
                    <nav class="navbar navbar-expand-md navbar-light sidebar">
                        <div class="active-menu-item"></div>
                        <button class="hamburger hamburger--collapse navbar-toggler collapsed" type="button" data-toggle="collapse" data-target="#side-menu" aria-controls="side-menu" aria-expanded="false" aria-label="Toggle navigation"></button>
                        <div class="collapse navbar-collapse" id="side-menu">
                            <?PHP
                                $defaults = array(
                                    'theme_location'    => 'products-nav','container'         => 'false','menu_class'        => 'nav navbar-nav','depth'             => 2,'walker'            => new WP_Bootstrap_Navwalker()
                                );
                                wp_nav_menu($defaults);
                            ?>
                        </div>
                    </nav>
                </div>
                <div class="col-md-9">
                    <?PHP $args = array( 'post_type' => 'products','posts_per_page' => 30,'order' => 'ASC' );
                        $loop = new WP_Query( $args );
                        while ( $loop->have_posts() ) : $loop->the_post();
                    ?>
                    <div class="col-md-3" id="item-<?PHP the_ID(); ?>">
                        <a href=" <?PHP the_permalink(); ?>">
                            <?PHP the_post_thumbnail(); ?>
                            <?PHP the_title('<h4>','</h4>'); ?>
                        </a>
                    </div>
                    <?PHP endwhile; ?>
                </div>
            </div>
        </div> <!-- /container -->
    </div>
</main>

<?PHP get_footer(); ?>

category.PHP

当前不在列表中输出任何内容

<?PHP get_header(); ?>

<main role="main">
    <?PHP $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID),'walker'            => new WP_Bootstrap_Navwalker()
                                );
                                wp_nav_menu($defaults);
                            ?>
                        </div>
                    </nav>
                </div>
                <div class="col-md-9">
                    <ul>
                        <?PHP
                            foreach( ( get_the_category() ) as $category ) {
                                $the_query = new WP_Query('category_name=' . $category->category_nicename . '&showposts=10&order=ASC&post_type="products"');
                                while ($the_query->have_posts()) : $the_query->the_post();
                        ?>

                        <li>
                            <a href="<?PHP the_permalink(); ?>">
                                <?PHP the_title(); ?>
                            </a>
                        </li>

                        <?PHP endwhile; ?>
                        <?PHP
                            }
                        ?>
                    </ul>

                </div>
            </div>
        </div> <!-- /container -->
    </div>
</main>

<?PHP get_footer(); ?>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。