我不明白为什么我的WP_Query 始终显示所有已发布的帖子,无论我在参数中输入了什么。
<?php 
    $args = array(\'numberposts\' => 1,
                    \'meta_key\' => \'display\',
                    \'meta_value\' => \'about\'
    );
    $about_preview_query = new WP_Query($args);
    if ($about_preview_query->have_posts()) {
        print "<h1>FOUND POSTS</h1>";
    }
    while ($about_preview_query->have_posts()) {
        $about_preview_query->the_post();
        print "<h1>";
        the_title();
        print "</h1>";
    }
?>
 我是不是做错了什么?读取文件后
WP_Query() 我想不出哪里出了问题,非常感谢您的帮助。
Update
我尝试过这个代码,但仍然得到相同的响应。所有帖子都将在循环中返回。
    $args = array(
        \'posts_per_page\' => 1,
        \'meta_query\' => array(
            array(
                \'key\' => \'display\',
                \'value\' => \'about\',
                \'compare\' => \'=\',
             )
        ),
    );
 更新2
如果我打印$about_preview_query->found_posts 输出为1。因此,我怀疑我循环帖子的方式有问题:
<?php if ($about_preview_query->have_posts()): ?>
    <h1>Has <?php print $about_preview_query->found_posts ?> Posts</h1>
    <?php while ($about_preview_query->have_posts()): $about_preview_query->the_post(); ?>
        <h2><?php the_title(); ?></h2>
    <?php endwhile; ?>
<?php endif; ?>