我正试图建立一个包含本周所有帖子的frontpage。这很简单(查询片段):
$query_string = array(
\'post_type\' => \'post\',
\'date_query\' => array(
array(
\'year\' => date( \'Y\' ),
\'week\' => date( \'W\' ),
),
),
\'post_status\' => \'publish\'
);
query_posts($query_string);
这是在修改我的循环,以仅显示当前周的帖子。现在的问题是,这样分页就不起作用了。当我过滤当前周的主查询时,WP似乎认为这就是整个结果集。
那么,如何实现我的目标,以分页方式显示选定的周帖子,以切换“返回时间”?
到目前为止,我认为我完全错了:(
啦啦队员
SO网友:JHoffmann
使用页码计算新日期,以获取获取的周数:
$page = ( get_query_var( \'paged\' ) ) ? get_query_var( \'paged\' ) : 1;
$date_to_fetch = time() - ( 604800 * ( $page - 1 ) ) );
$query_string = array(
\'post_type\' => \'post\',
\'date_query\' => array(
array(
\'year\' => date( \'o\', $date_to_fetch ),
\'week\' => date( \'W\', $date_to_fetch ),
),
),
\'post_status\' => \'publish\'
);
query_posts($query_string);
如果您正在与
date( \'W\' )
, 你应该一直与
date( \'o\' )
而不是
date( \'Y\' )
, 因为在一年之初,你可能还处在过去一年的一周内。有关此信息,请参阅日期函数的文档:
http://php.net/manual/de/function.date.php