无法按类别获取自定义帖子

时间:2017-06-03 作者:bob

我正在构建一个函数WP_Query 从自定义帖子类型查询帖子。

只要我不尝试包含类别参数,我就可以很好地获得帖子。

这是我现在使用的代码:

/*
 * Get albums by category
 */
function lml_albums_by_category( ) {

    $args = array(
        \'posts_per_page\' => 6,
        \'post_type\' => albums,
        \'category_name\' => "new-release"
    ) ;


    $my_query = new WP_Query($args) ;

?>
    <?php if ($my_query->have_posts()) : ?>
        <section id="">
            <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
                <article class="">
                    <h3><?php the_title()  ?></h3>
                    <p><?php  the_excerpt(); ?></p>
                    <p><a href="<?php echo get_permalink()  ?>">read more</a></p>
                </article>
            <?php endwhile; ?>
        </section> <!-- ENDS #...  -->
    <?php endif; ?>


<?php } ?>
如果省略category参数,我就可以获得帖子。但如果我把它包括在内,那么我就没有帖子了。

存在具有此类别的自定义类型的帖子。

在“category\\u name”=>“new release”的位置上,我还尝试了:

\'cat\' => 430 // where 433 is the id of the category
以及

\'category__in\' => 430
这里会出什么问题?

1 个回复
SO网友:Johansson

您可以尝试使用catcategory__in (对于类别数组)而不是category-name 并为其分配ID:

$args = array(
    \'posts_per_page\' => 6,
    \'post_type\' => \'albums\',
    \'cat\' => 4,
);
我也会使用单引号\' 而不是双引号" 设置值时。您的帖子类型也缺少引号,应该是\'albums\' 而不是albums.

如需进一步阅读,请检查codex 第页,共页WP_Query.

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post