你可能会注意到,我或多或少地为Matt的网站做了这样的事情:http://ma.tt. 每套帖子按天分组。基本原则是在循环中跟踪你的一天,然后只在日期发生变化时打印日期和相关内容。
进行基本循环:
if ( have_posts() ) : while ( have_posts() ) : the_post();
the_title();
the_content();
endwhile; endif;
这只是打印当前循环中所有内容的标题和内容(没有任何格式或任何内容)。现在,您希望它在每次日期更改时都弹出一个新日期。因此,您需要跟踪它何时发生变化。像这样:
$loopday = \'\';
if ( have_posts() ) : while ( have_posts() ) : the_post();
if ($loopday !== get_the_time(\'D M j\')) {
$loopday = get_the_time(\'D M j\');
echo $loopday;
}
the_title();
the_content();
endwhile; endif;
这样做的目的是将要输出的日期存储到变量中。每次通过循环,它都会再次获取它并检查它是否已更改。如果它没有改变,那么什么也不会发生。如果已更改,则使用新的日期字符串设置变量,输出它,然后继续。
显然,这只是一个例子。具体细节取决于现有循环的工作方式以及输出信息的方式。
虽然默认情况下,\\u date()确实可以做到这一点,但出于格式方面的原因,有时自己用这种方式更容易做到。