0

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

星期五
ROOM1:ARTIST1、ARTIST2、ARTIST3、...
ROOM2:ARTIST4、ARTIST5、ARTIST6、...
星期六
ROOM1:ARTIST1、ARTIST2、ARTIST3、...
ROOM2:ARTIST4、ARTIST5、ARTIST6、...
星期日
ROOM1:ARTIST1 , ARTIST2, ARTIST3, ...
ROOM2: ARTIST4, ARTIST5, ARTIST6, ...


我尝试了几个小时为此找到正确的代码,但没有雪茄,这里使用“类别”是否错误,因为它是自定义帖子类型?

谢谢你的帮助

<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>
4

2 回答 2

0

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

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

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

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

于 2013-01-10T12:58:38.383 回答
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; ?>

不要忘记填写正确的分类名称,您可以将术语添加到数组中希望这会有所帮助。

于 2013-01-11T10:42:27.927 回答