我的情况是我有Page的ID。但我无法正确检索这些页面标题请看看。
$check = $data['query'];
echo $check;
显示:101,103,105,107,109
$query = new WP_Query( array( 'post_type' => 'page', 'post__in' => array($check)));
?>
<div class="menu">
<ul class="tabs">
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
</ul>
</div>
</div>
但是此代码显示第一个ID的标题。有什么建议?
答案 0 :(得分:0)
我相信你只需要更新一行。 post__in
获取一个数据数组,并且您传入的数组中第一个项目是数组。
这一行:
$query = new WP_Query( array( 'post_type' => 'page', 'post__in' => array($check)));
应该是:
$query = new WP_Query( array( 'post_type' => 'page', 'post__in' => $check));
为我打印了整个帖子标题。
所以,我只是注意到你在回声中打印出一个字符串。您需要将$check
变量更新为:
$check = explode(',',$data['query']);
这将为您提供一个数组,以提供查询的post__in
部分。