显示类别ID之外的帖子的WP查询结果

时间:2017-11-20 作者:Beau Beau

我有一个名为“房间”的自定义帖子类型,我有分配给特定房间的类别,以便它们以特定的方式在页面上排序。类别ID为8、9和10。

当我为特定类别拉取下面的WP查询时,无论类别如何,所有房间都会显示出来。我不太确定哪里出了问题,但我觉得它在我的数组args中。任何帮助都将不胜感激。

<?php 
$args = array(
    \'numberposts\'   => -1,
    \'post_type\'     => \'rooms\',
    \'category_ID\'       => \'8\',);

$the_query = new WP_Query( $args );?>

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

        <div class="room-single">
                <img src="<?php the_post_thumbnail_url(); ?>" class="room-preview-image">
                <div class="room-single-content">
                <a href="<?php the_permalink(); ?>"><h3><?php the_title(); ?></h3></a>
                <p><?php the_field(\'room_excerpt\'); ?></p>
                <a href="<?php the_permalink(); ?>">View the <?php the_title(); ?> room</a>
                </div>

            </div>
    <?php endwhile; ?>

<?php endif; ?>

<?php wp_reset_query();  // Restore global post data stomped by the_post(). ?>

1 个回复
最合适的回答,由SO网友:websupporter 整理而成

category_ID 不是的有效密钥WP_Query. cat 如果要查询类别,则可以使用:

示例:

$args = array(
    \'numberposts\' => -1,
    \'post_type\'   => \'rooms\',
    \'cat\'         => 8,
);

$the_query = new WP_Query( $args );
如果你的类别实际上不是税收category 但作为自定义分类法,这将是查询它的另一种方式:

$args = array(
    \'numberposts\' => -1,
    \'post_type\'   => \'rooms\',
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'your-category-taxonomy\',
            \'terms\'    => 8,
        ),
    ),
);

$the_query = new WP_Query( $args );
希望这有帮助。

结束