按分类标准进行的自定义分类查询不起作用

时间:2015-01-20 作者:Jason Herndon

不确定发生了什么-下面是我的代码:

$args = array(
    \'orderby\' => \'title\',
    \'show_posts\' => \'-1\', 
    \'posts_per_page\' => \'-1\', 
    \'cat\' => $goalsCat->cat_ID,
    \'post_type\' => \'Goals\',
    \'author\' => $current_user_id,
    \'post_status\' => \'publish\',
);

$wp_query_assigned = new WP_Query($args); 


if ( $wp_query_assigned->have_posts() ) : 

    while ($wp_query_assigned->have_posts()) : $wp_query_assigned->the_post();
        $title = get_the_title();
        echo \'<p>\'.$title.\'</p>\';
   endwhile;
else : 

    echo \'<p>You have no set Goals\';

endif;
wp_reset_query(); 
如果我从$args数组中删除category参数,它将返回该类别中的所有帖子,因此我知道这部分工作正常。但当我添加类别时,它什么也不返回。我能够确认每个类别中都有帖子,并且所有ID都是正确的。

有什么想法吗?

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

您在查看用于标记问题的代码和标记时遇到了几个问题

  • show_posts 是错误的。它被贬值为posts_per_page. 而且应该是showposts.

    您不能使用showpostsposts_per_page 在一起您应该只使用posts_per_page

    不要在自定义帖子类型名称中使用camelcase,它们在模板方面确实有问题。仅使用下划线和小写字母。自定义分类法也是如此

    我相信您使用的是自定义分类法,而不是内置类别,这是导致代码失败的首要原因。类别参数不适用于自定义分类法,应使用tax_query. 但首先,read this post 了解什么是类别,什么是术语和分类法

结束

相关推荐

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

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