0

我有一份员工通讯,其中每月发布一期,就在它所指的月份之前。

我需要我的索引页面来显示最近一个月的帖子。

例如:当前月份是 7 月,但发布任何内容的最后一个月是 5 月,因此索引页面应显示 Mays 的帖子,直到发布下一组帖子。

我正在使用:

$current_month = date('m');
$current_year = date('Y');
query_posts("year=$current_year&monthnum=$current_month&order=DESC")

但这只会显示当月的帖子,因此索引页面现在是空白的,因为当月没有帖子。

关于如何解决这个问题的任何想法?

谢谢

4

2 回答 2

2

使用此查询显示上个月的最新帖子:

<?php 
$today = getdate();
$args=array(
      'post_type' => 'post',
      'post_status' => 'publish',
      'year'=>$today["year"],
      'monthnum'=>$today["mon"]-1,
      'order'=>'DESC',
      'posts_per_page' =>10
);

query_posts($args);
?>

<?php while ( have_posts() ) : the_post(); ?>
    <H1><?php echo the_title(); ?></H1>
<?php endwhile; ?>
于 2013-07-01T10:20:43.703 回答
1

知道了

$lastpost = strtotime(get_lastpostdate());
$lastmonth = date('m', $lastpost);
$lastyear = date('Y', $lastpost);

$args=array(
      'post_type' => 'post',
      'post_status' => 'publish',
      'year'=>$lastyear,
      'monthnum'=>$lastmonth,
      'order'=>'DESC',
      'posts_per_page' =>10
);

query_posts($args);

我将 get_lastpostdate() 转换为时间戳,并从该时间戳获取年份和月份

于 2013-07-01T20:16:28.493 回答