我像这样解决了同样的问题,首先将每个帖子存储在另一个名为$events_by_date
以日期为索引。如果另一个事件帖子出现在同一日期,则将该帖子放在同一索引下。
如果需要进一步解释,请发表评论。
<?php
//setup your wp_query parmeters to make the query
$calendar_results = new WP_Query( $wp_query_params );
$events_by_date = array();
while ( $calendar_results->have_posts() ) : $calendar_results->the_post();
//$date_group = strtotime($calendar_results->post->post_date);
$date_group = strtotime(date(\'Y-m-d\',$date_group));
$events_by_date[$date_group][] = $calendar_results->post;
endwhile;
global $post;
foreach($events_by_date as $date_heading=>$rows) {
echo \'<h2 class="published-date">\',
ucfirst( strftime( \'%A %d %b\',$date_heading ) ) ,
\'</h2>\';
foreach ($rows as $post ) {
setup_postdata($post) ;
get_template_part( \'content\', $template );
}
}
wp_reset_query();