以下是我发现的东西,我会将其分解成碎片:
for ($i = 1; $i <= 12; $i++) {
$month = date("n", strtotime( date( \'Y-m-01\' )." -$i months"));
$year = date("Y", strtotime( date( \'Y-m-01\' )." -$i months"));
The
for
循环将循环我们想要拉多少个月,在本例中是12个月。这个
$month
变量将保存一个不带任何前导零的整数,我们可以在一个月后使用它来引用当前值(内部循环电流)。我正在使用
strtotime
从当前(实时)月的第一天开始,并从那里向后计数。同样的事情也会发生在
$year
$tmpQuery = new WP_Query(array(\'monthnum\' => $month, \'post-type\' => \'post\'));
然后我们可以使用
$month
变量查询当月的所有帖子。然后我们可以进入正常循环。
<?php
for ($i = 1; $i <= 12; $i++) {
$month = date("n", strtotime( date( \'Y-m-01\' )." -$i months"));
$year = date("Y", strtotime( date( \'Y-m-01\' )." -$i months"));
$tmpQuery = new WP_Query(array(\'monthnum\' => $month, \'year\' => $year, \'post-type\' => \'post\'));
if($tmpQuery->have_posts()) :
?>
<h2><?php echo date("F", mktime(0, 0, 0, $month, 10)); ?> - <?php echo $year; ?></h2>
<ul>
<?php while($tmpQuery->have_posts()) : $tmpQuery->the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
<?php else : ?>
<p>No Posts This Month</p>
<?php endif;
// wp_reset_query();
}
?>