使用列表按日期对帖子进行分组

时间:2011-11-23 作者:flintsburg

我想将一组按日期分组的帖子设置为列表。以下是我想要的:

Day...
<ul>
    <li><a href="#">Lorem ipsum</a></li>
</ul>
Previous day...
<ul>
    <li><a href="#">Lorem ipsum</a></li>
    <li><a href="#">Lorem ipsum</a></li>
</ul>
我做到了:

<?php while (have_posts()) : the_post(); ?>
<?php the_date(); ?>
<li><a href="#"><?php the_time(); ?><?php the_title(); ?></a></li>
<?php endwhile; ?>
我真的不知道该把<;ul>或(<)/ul>标签。有什么想法吗?

实际上,通过执行以下操作可以设置起始标记:

<?php the_date(\'\',\'\',\'<ul>\'); ?>
但我不知道如何设置结束标记。

你好,亚历克斯

1 个回复
最合适的回答,由SO网友:cbaigorri 整理而成

我通常会做一个简单的检查,看看那天是否变了。

<?php 
$day_check = \'\';
while (have_posts()) : the_post(); 
  $day = get_the_date(\'j\');
  if ($day != $day_check) {
    if ($day_check != \'\') {
      echo \'</ul>\'; // close the list here
    }
    echo get_the_date() . \'<ul>\';
  }
?>
<li><a href="#"><?php the_time(); ?><?php the_title(); ?></a></li>
<?php 
$day_check = $day;
endwhile; ?>

结束

相关推荐

WPMU函数GET_BLOG_DETAILS、LAST_UPDATED/REGISTED以及格式化时间和日期字符串

在我的多站点安装中,我可以通过get\\u blog\\u details和blog ID获取子博客的注册和上次更新的时间字符串:echo get_blog_details($blog_ID)->registered 好的,如何格式化生成的时间字符串:2011-09-28 00:20:34 谢谢