【发布时间】:2018-12-21 10:08:06
【问题描述】:
我正在尝试创建一个帖子,第一页有一个专题帖子,然后是 3 列帖子的行。
首页
|---------------Feature Post---------------|
|----Post----| |----Post----| |----Post----|
|----Post----| |----Post----| |----Post----|
那么第二页就是 3 列的行
|----Post----| |----Post----| |----Post----|
|----Post----| |----Post----| |----Post----|
我有以下代码设置,目前似乎无法区分结果的第一页和结果的第二页,因为它似乎将第二页上的计数器重新计算回 0。
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 4,
'paged' => $paged,
'prev_next' => true,
);
$wp_query = new WP_Query($args);
if( $wp_query->have_posts() ) {
$counter = 0;
while ($wp_query->have_posts()) {
$wp_query->the_post();
echo $counter
?>
<?php if ( 0 === $counter ) { ?>
<div class="row">
<div class="col-12">
======First article here=====
</div>
</div>
<?php } else { ?>
<?php if($counter % 3 === 0) { ?>
<div class="row">
<?php } ?>
<div class="col-md-4 news-grid__article">
===== All other articles here =====
</div>
<?php $counter++;
if($counter != 0 && $counter % 3 == 0) { ?>
</div>
<div class="clearfix"></div>
<?php } ?>
<?php } $counter++; ?>
<?php } } ?>
<div class="news-pagination">
<?php
echo paginate_links( array(
'prev_next' => true
) );
?>
</div>
知道为什么计数器在结果的第二页上重置为 0 吗?我相信这会解决我的问题并显示所需的布局。
【问题讨论】:
-
设置计数器变量,如
$counter = $args['posts_per_page'] * $paged + 1;如果页码为 0 或 1,则$counter从 0 开始,否则计数器将基于您的分页。 -
谢谢,这似乎解决了主要问题,但由于某种原因,我的计数器从 5 开始。有什么想法吗?
标签: php html wordpress bootstrap-4