WordPress-按优先级从类别中获取帖子

WordPress-按优先级从类别中获取帖子,wordpress,custom-post-type,Wordpress,Custom Post Type,我想从事件自定义帖子类型获得3篇帖子。但我想按类别优先级来做。如果“特色”类别有3个即将到来的事件,那么我想从中显示3个帖子,如果“特色”类别没有3个即将到来的事件,那么我想从其他类别+没有任何类别的帖子中获取帖子 最终结果将返回3个即将到来的事件。对于如何在WP_查询中添加该条件参数,我有点困惑 当前代码(最多只能从特色类别返回3篇帖子)- 提前感谢。不要为“特色”创建类别,而是创建一个自定义字段。在您的查询中,删除'tax\u query'以获取所有帖子,并更改orderby'orderby

我想从事件自定义帖子类型获得3篇帖子。但我想按类别优先级来做。如果“特色”类别有3个即将到来的事件,那么我想从中显示3个帖子,如果“特色”类别没有3个即将到来的事件,那么我想从其他类别+没有任何类别的帖子中获取帖子

最终结果将返回3个即将到来的事件。对于如何在WP_查询中添加该条件参数,我有点困惑

当前代码(最多只能从特色类别返回3篇帖子)-


提前感谢。

不要为“特色”创建类别,而是创建一个自定义字段。在您的查询中,删除
'tax\u query'
以获取所有帖子,并更改orderby
'orderby'=>“您创建的\u字段”

$events_args = array(
      'post_type'     => 'ctc_event',                
      'meta_query' => array(
        array(
          'key' => '_ctc_event_end_date',
          'value' => date_i18n( 'Y-m-d' ),
          'compare' => '>=',
          'type' => 'DATE'
        ),
      ),
      'meta_key'      => '_ctc_event_start_date_start_time',
      'meta_type'     => 'DATETIME',
      'orderby'     => 'meta_value',
      'order'       => 'ASC',
      'posts_per_page' => 3,
      'tax_query' => array(
          array(
              'taxonomy' => 'ctc_event_category',
              'field'    => 'slug',
              'terms'    => 'featured',
          ),
      ),
    );

$events = new WP_Query( $events_args );