我在wordpress网站工作..我的帖子有一个额外的日期字段,我只是在该日期字段在接下来的24小时内,我试图显示该帖子。我有一个wordpress查询只是抓住最近的帖子,如果发布日期在接下来的24小时内,我只想显示这个div。这是我得到的:
<?php $webnars = get_posts('post_type=webinar&posts_per_page=1');
foreach ( $webnars as $post ) : setup_postdata( $post );
$webDate = strtotime(get_field("next_live"));
?>
<div class="footer_alert">
<div class="wrapper_inner">
<div class="footer_alert_inside">
<a href="<?php the_permalink(); ?>">Upcoming Live Webinar - <?php echo date('M j, Y',strtotime(get_field('next_live'))); ?></a><br />
<?php
if($webDate > time() + 75000) {
echo 'yes';
} else {
echo 'no';
}
?>
</div>
<div class="footer_exit"><p><i class="fa fa-camera-retro fa-lg"></i> Exit</p></div>
</div>
</div>
<?php endforeach; wp_reset_postdata(); ?>
在帖子的日期字段上运行strtotime()的结果此时返回此结果:1398124800
今天time()现在返回:1398095699
发布时间 - 当前时间为我们提供:29101
现在,显然返回的数字少于75,000,那么为什么它会落入} else {声明并且回应否?他们的格式是我做错了吗?我从这篇文章中获取了大部分代码:PHP check if timestamp is greater than 24 hours from now
答案 0 :(得分:3)
部分:
if($webDate > time() + 75000)
将您的号码翻译成:
if( 1398124800 > 1398095699 + 75000 )
或
if( 1398124800 > 1398170699 )
或
if( FALSE )
所以你的其他部分会按预期在这里激活。
Ps:你为什么使用75000
?实际上24
小时为86400
秒。