Search code examples
phpwordpressposts

wordpress display second three posts


I need to display:

first three posts in first div from wordpress,

second three posts in second div from wordpress and

third three posts in third div from wordpress.

How can I do this?

div 1
    --1st post
    --2nd tpost
    --3rd post
div 2
    --4th post
    --5th post
    --6th post
div 3
    --7th post
    --8th post
    --9th post

Solution

  • You could do it via several methods. Put the data into an array and then chunk() it, and loop over those chunks.

    Or, you could simply loop over the data:

    <div class="...">
        <?php
        // Set counter
        $i = 1;
    
        // Loop over your posts
        while (have_posts()) {
            // If you have ouputted three already then close and reopen div
            if ($i == 3) {
                $i = 1;
    
                echo '</div><div class="...">';
            }
    
            // Output the post and increment the counter
            the_content();
            $i++;
        }
        ?>
    </div>