如何在Wp_query中包含一篇文章


How can I include a single post inside a Wp_query?

我当前的查询如下。

$tag_id = 276;
$tag = get_tag($tag_id);
$today = date( "Y-m-d" );
$args  = array(
    'post_type'     => array(
                        'post',
                        'review',
                        'cardguide'
                    ),
    'taxonomy'      => 'post_tag',
    'tag_id'        => $tag_id,
    'posts_per_page'=> - 1,
    'orderby'       => 'id',
    'order'         => 'DESC',
    'meta_key'      => 'event_end_date',
    'meta_query'    => array(
        'relation'=> 'AND',
        array(
            'key'    => 'event_start_date',
            'value'  => $today,
            'compare'=> '<=',
            'type'   => 'DATE'
        ),
        array(
            'key'    => 'event_end_date',
            'value'  => $today,
            'compare'=> '>=',
            'type'   => 'DATE'
        )
    )
);
$my_query = new Wp_query( $args );

我想在这个查询中包括一个帖子(可以使用帖子id)。帖子可能不遵守我在$args中定义的每一条规则。并且希望它总是在列表的顶部(特色项目)

如果您希望每次都为此查询获取相同的post-by-id,那么只需执行单独的get_post()调用,如:

$featured_item = get_post( 123 ); // replace 123 with your id

这将使你不必担心"遵守上面定义的每一条规则"。此外,如果您总是希望它"在顶部",那么您可以在运行查询循环之前提取$featured_item的值。