第二个WP_QUERY循环显示来自主查询的数据

时间:2017-07-23 作者:Ole Kristian Losvik

我试图在我的主题中显示特色帖子,带有一个自定义字段mytheme_featured_post 这是特色帖子中的第一条。

然而,它似乎并没有将帖子过滤到元查询中的帖子。

// WP_Query arguments.
$featured = array(
\'posts_per_page\' => \'5\',
\'meta_query\' => array(
    array(
        \'key\'     => \'mytheme_featured_post\',
        \'value\'   => \'1\',
    ),
),
);

// The Query.
$featured_query = new WP_Query( $featured );

if ( $featured_query -> have_posts() ) {
    while ( $featured_query -> have_posts() ) : $featured_query -> the_post();
        the_title();
    endwhile;
}
Update:此参数按预期工作:

// WP_Query arguments.
$featured = array(
    \'posts_per_page\' => \'5\',
    \'cat\'            => \'1\',
    \'meta_key\'       => \'mytheme_featured_post\',
    \'meta_value\'     => \'1\',
);

2 个回复
最合适的回答,由SO网友:Ole Kristian Losvik 整理而成

我被粘帖骗了。如果有人遇到同样的问题,这里是工作代码!排除胶粘物后检查是否有效。

/**
 * WP_Query arguments.
 *
 * @link https://codex.wordpress.org/Class_Reference/WP_Query
 */
$args = array(
    \'posts_per_page\' => \'4\',
    \'orderby\' => \'modified\',
    \'order\' => \'desc\',
    \'post__not_in\'   => get_option( \'sticky_posts\' ),
    \'meta_query\' => array(
        array(
            \'key\'     => \'mytheme_featured_post\',
            \'value\'   => \'1\',
            ),
            ),
    );

// The Query.
$query = new WP_Query( $args );

// The Loop.
if ( $query->have_posts() ) {

    while ( $query->have_posts() ) :
        $query->the_post();
        the_title();
    endwhile;
}
wp_reset_postdata();

SO网友:Ajay Tank

首先确保您的查询是否为当前查询。

参考-https://codex.wordpress.org/Class_Reference/WP_Query

在每个自定义查询之后或之前,编写查询重置函数。

wp_reset_query()
试试看。

结束

相关推荐

Duplicates with WP_Query loop

我在头版上只显示带有特色图片的帖子。我的问题是,每次加载下一个页面时,我都会收到相同的结果,也就是得到重复的结果。我正在使用按自定义字段排序。欢迎任何可能导致此问题的指示/想法。下面是我的主循环// Layout if(is_category()) { $post_layout = blt_get_option(\'category_post_layout\', \'normal\'); } elseif(is_author()) {