Php 以自定义帖子类型显示来自2个类别/分类的帖子

Php 以自定义帖子类型显示来自2个类别/分类的帖子,php,wordpress,loops,categories,taxonomy,Php,Wordpress,Loops,Categories,Taxonomy,我正在用wordpress制作一个节日网站的排队页面。我在wordpress主题“艺术家”中添加了一个自定义帖子类型。我有3个类别代表不同的日子,2个类别代表每个节日的不同阶段。我现在想展示所有按天和阶段排序的艺术家。例如: 星期五 房间1:艺人1,艺人2,艺人3,… 房间2:艺人4,艺人5,艺人6,… 星期六 房间1:艺人1,艺人2,艺人3,… 房间2:艺人4,艺人5,艺人6,… 周日 房间1:艺人1,艺人2,艺人3,… 房间2:艺人4,艺人5,艺人6 我花了好几个小时为这篇文章找到了正确的

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

星期五
房间1:艺人1,艺人2,艺人3,…
房间2:艺人4,艺人5,艺人6,…
星期六
房间1:艺人1,艺人2,艺人3,…
房间2:艺人4,艺人5,艺人6,…
周日
房间1:艺人1,艺人2,艺人3,…
房间2:艺人4,艺人5,艺人6


我花了好几个小时为这篇文章找到了正确的代码,但没有找到雪茄,这里使用“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>
星期五

星期六 星期天
作为您正在处理的自定义帖子类型,您必须在查询中通过添加
'post\u type'=>'artist'

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

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

如果您使用的是默认的WP类别,您应该能够只使用:
'category\uuu in'=>数组(6,7)
而不是category\uu,您应该尝试以下操作:

<?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; ?>

不要忘记填写正确的分类名称,您只需向数组中添加术语即可
希望这有帮助。

非常感谢!我尝试了一段时间,但我想也许我不清楚我试图实现什么,对不起:)。实际上,我想在id=6和id=7的分类中显示项目(因此,在id=6或id=7的分类中不显示项目我的自定义帖子类型是“ilt_艺术家”我的分类是“ilt_房间”,这些房间中的“techno(id=6)”和“rock(id=7)”我想显示艺术家(帖子)在我看到的一个既有摇滚乐又有科技元素的列表中,试试看……
'tax\u query'=>数组('relation'=>'和',数组('taxonomy'=>'ilt\u artist','field'=>'id','terms'=>数组('6')),数组('taxonomy'=>'ilt_artist','field'=>'id','terms'=>数组('7'))
我尝试先测试是否显示所有艺术家和他们的作品,但这只提供了我博客中的正常新闻帖子,而不是我自定义帖子类型中的艺术家:这就成功了!太感谢了,伙计,我一直在为这件事伤脑筋。