我如何根据帖子ID过滤查询?

时间:2013-11-06 作者:marcelo2605

在我的wp\\U Posteta表中,我有以下值:

enter image description here

我正在查询那些ID在meta_value 与给定帖子(正在查看的当前帖子)关联的列。

例如,假设我正在查看帖子94. 如上所示,我想检索帖子108,78,90 与…有关94 并显示其标题。

通过这种方式,an区域(post类型)通过其ID作为post“area”元键的元值之一与post关联。

我从以下内容开始:

$args = array(
          \'post_type\' => \'area\',
          \'posts_per_page\' => -1,
      );

      $areas = new WP_Query($args);
但是我如何指定我想要与帖子关联的帖子94?

1 个回复
最合适的回答,由SO网友:Stephen Harris 整理而成

所以你想要这些值108,78,90 对应ID为94的帖子的元键“区域”?

首先检索这些ID:

$the_post_id = 94;
$area_ids = get_post_meta( $the_post_id, \'areas\', false );

//Make sure they\'re all positive integers
$area_ids = array_map( \'absint\', $area_ids );

if( $area_ids ){
   //We have IDs, retrieve posts
   $areas = get_posts( array(
      \'post_type\' => \'area\',
      \'numberposts\' => -1,
      \'post__in\' => $area_ids;
   ));

   if( $areas ){
       //We have areas
       foreach( $areas as $area ){
          echo get_the_title( $area ). \'<br/>\';
       }
   }

}
上述内容尚未得到验证,但在理论上应该是可行的。如果你愿意$the_post_id 到当前正在查看的帖子的be ID,然后您可以使用get_the_ID().

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post