I'm trying to run a query that puts my lists into groups of 3. For example...
<li>
<div class="col-md-12">Post 1</div>
<div class="col-md-12">Post 2</div>
<div class="col-md-12">Post 3</div>
</li>
<li>
<div class="col-md-12">Post 4</div>
<div class="col-md-12">Post 5</div>
<div class="col-md-12">Post 6</div>
</li>
<li>
<div class="col-md-12">Post 7</div>
<div class="col-md-12">Post 8</div>
<div class="col-md-12">Post 9</div>
</li>
Now, I have the below query that works but it seems it displays never-ending results. Should there be a for each call?
<?php $query = new WP_Query( array( 'post_type' => 'serivces' ) ); ?>
<li>
<?php $count = 0; ?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<div class="col-md-12"><?php the_title(); ?></div>
<?php
$count++;
if ( ( $count % 3 ) == 0 && $query->have_posts() ) {
?>
</li>
<li>
<?php
}
endwhile; ?>
</li>
Thanks for your help! Cheers.
It turns out using $query->have_posts()
inside if condition (the one with the counter) was causing the issue please try this code & see if it works :)
Edited Code
<li>
<?php
$count = 0;
$query = new WP_Query(
array(
'post_type' => 'serivces'
)
);
if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post();
if ($count!=0 && $count%3==0){
echo "</li><li>";
}
?>
<div class="col-md-12"><?php the_title(); ?></div>
<?php $count++; endwhile; endif; ?>
</li>