从概念上讲,这并不难做到。
if (have_posts()) {
while (have_posts()) {
the_post();
if ( $post->post_date >= date("Y-m-d H:i:s",strtotime(\'7/15/03 1:03 PM\'))
&& $post->post_date <= date("Y-m-d H:i:s",strtotime(\'9/19/07 11:34 AM\'))) ) {
// (layout coding)
} elseif ( /* another condition */ ) {
// (layout coding)
} elseif ( /* another condition */ ) {
// (layout coding)
} else {
// (layout coding)
}
}
}
您可以跳过
strtotime
如果只使用MySQL格式的日期--
YYYY-MM-DD HH:MM:SS
(24小时)-首先。
随着时间的推移,这将变得相当麻烦。可能已经很久了ifelse
序列,尤其是布局标记像这样穿插在一起。不幸的是,除非您的格式发生了不可避免的变化。您可以通过使用get_template_part
.
} elseif ( /* another condition */ ) {
get_template_part(\'layouts/\',\'layout2\');
}
布局标记将位于
wp-content/themename/layouts/layout2.php
. 这将使事情更具可读性和可维护性。
此外,您不需要所有这些打开和关闭PHP标记。只有在从PHP切换到HTML时才需要这些。它们不是直线起点和终点的标记。