您可以通过以下方式来实现这个功能:
获取特定栏目的最新文章:
$posts = $this->widget("Widget_Posts_List@{$type}_recent", 'pageSize=1&categoryId={栏目ID}');
if($posts->have()){
$post = $posts->next(); //获取第一篇文章
$post_time = $post['created']; //获取该文章发布时间
}
这里使用了 Typecho 自带的 $this->widget() 方法来获取指定栏目下的最新文章,在获取到文章列表后,通过 $posts->next() 方法来逐个获取文章,获取到第一篇文章后,可以通过 $post['created'] 来获取该文章的发布时间。
判断文章时间和当前时间是否超过五天:
$time_diff = time() - $post_time; //获取文章发布时间距离当前时间的差值
$is_over_five_days = $time_diff > 5 * 24 * 60 * 60; //判断差值是否超过五天,如果超过则返回 true
这里我们通过获取到的文章发布时间和当前时间求出时间差,然后将时间差转换为秒,再和五天的秒数进行比较,来判断该文章发布时间是否超过五天。
最终的完整代码如下:
$posts = $this->widget("Widget_Posts_List@{$type}_recent", 'pageSize=1&categoryId={栏目ID}');
if($posts->have()){
$post = $posts->next();
$post_time = $post['created'];
$time_diff = time() - $post_time;
$is_over_five_days = $time_diff > 5 * 24 * 60 * 60;
if($is_over_five_days){
//文章发布时间超过五天
} else {
//文章发布时间未超过五天
}
}