在WP_Query中查询多个参数时,META_QUERY不允许显示帖子

时间:2017-08-28 作者:Anurag Ahuja

我想在学校网站上显示每天的生日。老师和学生的生日有不同的部分。我只想查询老师的生日。我的自定义字段是位置(教师或学生-选择输入)、出生日期(日期选择器)。我的代码如下所示:

<?php
$today = date(\'d/m\');
$args = array(
\'post_type\' => \'birthday\',
\'posts_per_page\' => 1,
\'meta_query\' => array(
     array(
     \'key\' => \'field_position\',
     \'value\' => \'Teacher\'
     )
     array(
     \'key\' => \'field_dob\',
     \'value\'=> $today
 )
);
$the_query = new WP_Query($args);
?>
<?php if($the_query->have_posts()) : while($the_query->have_posts()): $the_query->the_post(); ?>
   <?php the_title(); ?>
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

1 个回复
SO网友:aryan

Try this one

<?php
$date_today = time();
$args = array(
\'post_type\' => \'birthday\',
\'posts_per_page\' => 1,
\'meta_query\' => array(
                      \'relation\'  =>   \'AND\',
                      array(
                         \'key\' => \'field_position\',
                         \'value\' => \'Teacher\'
                         ),
                      array(
                          \'key\' => \'field_dob\',
                          \'value\' => $date_today,
                          \'compare\' => \'=\',
                          )

                     )
                    );    

$the_query = new WP_Query($args);


if($the_query->have_posts()) : while($the_query->have_posts()): $the_query->the_post(); 

the_title(); 

endwhile; 

endif; 

?>
结束

相关推荐

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

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