首页 文章

显示自定义帖子类型中2个类别/分类的帖子

提问于
浏览
0

我正在使用wordpress制作节日网站的排队页面 . 我在我的wordpress主题“艺术家”中添加了一个自定义帖子类型 . 我有3个类别代表不同的日子,2个类别代表每个节日的不同阶段 . 我现在想要显示按日和按阶段分类的所有艺术家 . 例如:

Friday
ROOM1:ARTIST1,ARTIST2,ARTIST3,...
ROOM2:ARTIST4,ARTIST5,ARTIST6,...
SATURDAY
ROOM1:ARTIST1,ARTIST2,ARTIST3,...
ROOM2:ARTIST4,ARTIST5,ARTIST6,...
SUNDAY
ROOM1:ARTIST1,ARTIST2,ARTIST3,...
ROOM2:ARTIST4,ARTIST5,ARTIST6,...

我试了几个小时才找到合适的代码,但没有雪茄,这里使用了"category"错了,因为它是一个自定义的帖子类型?

谢谢你的帮助

<h2>FRIDAY</h2>
                        <?php // the loop ?>
                            <?php $query = new WP_Query( array( 'category__and' => array( 6, 7 ) ) ); ?>

                            <?php if ($query->have_posts()) : ?>

                                <?php while ($query->have_posts()) :$query->the_post(); ?>

                                    <?php $query->get_template_part( 'includes/loop' , 'index'); ?>

                                <?php endwhile; ?>                  

                            <?php else : ?>

                                <p><?php _e( 'Sorry, no artists found.', 'themify' ); ?></p>

                            <?php endif; ?> 


                        <h2>SATURDAY</h2>

                        <h2>SUNDAY</h2>

2 回答

  • 0

    你应该尝试这样的事情:

    <?php $query = new WP_Query( 
                       array(
                           'tax_query' => array(
                                array(      
                                    'taxonomy' => '[taxonomy-name]',
                                    'field' => 'id',
                                    'terms' => array(6, 7),
                                    'operator' => 'AND'
                                )
                            ),
                            'posts_per_page' => -1
                        )
                    ); ?>
    
    <?php if ($query->have_posts()) : ?>
        <?php while ($query->have_posts()) :$query->the_post(); ?>
            <?php $query->get_template_part( 'includes/loop' , 'index'); ?>
        <?php endwhile; ?>                  
    <?php else : ?>
       <p><?php _e( 'Sorry, no artists found.', 'themify' ); ?></p>
    <?php endif; ?>
    

    不要忘记填写正确的分类法名称,您只需在阵列中添加术语希望这会有所帮助 .

  • 0

    作为您正在处理的自定义帖子类型,您必须通过添加 'post_type' => 'artist' 在查询中指定此类型

    关于类别,如果您正在使用自定义类别,请查看here,您需要添加以下内容:

    'tax_query' => array(
        array(
            'taxonomy' => 'category',
            'field' => 'id',
            'terms' => array(6,7)
        )
    )
    

    如果您使用的是默认WP类别,则应该只能使用: 'category__in' => array(6,7) 而不是category__和

相关问题