This can be achieved by accessing WP_Query
class properties, available while in the loop, like $current_post
(index of the current post), $post_count
(number of posts displayed), $found_posts
(total number of posts matching query).
By using $current_post
, $post_count
and PHP modulo, like shown below:
<?php if ( $custom_query->have_posts() ) : while ( $custom_query->have_posts() ) : $custom_query->the_post();
$i = $custom_query->current_post;
$c = $custom_query->post_count;
if ( $i % 4 == 0 ) {
// happening for $i being 0, 4, 8 and so on
echo '<div class="row">';
} ?>
// single post markup
<?php if ( $i % 4 == 3 || $i == ( $c - 1 ) ) {
// happening for $i being 3, 7, 11 and so on
// OR condition in case the last one is not a multiple of 4
echo '</div>';
}
endwhile; endif; ?>
Related Posts:
- The next_posts_link() works only with original $wp_query
- WP_Query: Why is sticky post not first item in loop?
- Query *only* sticky posts
- Skipping first 3 posts in wp query
- Accessing the post content with WP_Query
- Most viewed post for the last 2 days using WP_Query
- Adding Post Counts to Menu (Nav) Programmatically?
- This AJAX Code Doesn’t Work – Looking for elegant solution
- Get only modified posts
- How to output comments number of a post per day?
- Should ‘setup_postdata()’ be reset with ‘wp_reset_postdata()’?
- If specific user role then sticky post
- Hide Post comments when displayed via WP_Query
- Display posts with comments closed, with pagination?
- posts_per_page doesnt work
- Blogroll – Different layout for first post
- I want to query posts in monthly basis
- Loop through all product posts?
- Custom WP_QUERY $args
- Improving WP_Query for performance when random posts are ordered
- Why won’t my taxonomy query show up?
- Limiting the number of posts in WP_Query leads to unexpected result
- WP_Query with ajax handler returns the same posts
- Why WP_Query(‘showposts=5’) shows only 1 post?
- How to insert 2 args into 1 Wp_Query for a slideshow
- WP Query – Posts Per Page not working in combination with category__in
- How to do set post permalinks using 6 digit random unique function?
- Lost draft under all posts and drafts
- Get user categories with most posts in it
- how to change the number of posts returned in a specific loop without making it global?
- posts_per_page option limits the number of Gallery items
- List authors with the last post title and order by last post date
- How to order posts by meta_value and title
- Nested WP_Query breaking loop
- Why Query is returning empty array?
- meta_value timestamp older than now
- Get posts with multiple categories
- Do not show children of a category
- Print out last 3 blogposts
- Query for first 3 posts to change the look and feel
- Getting blog pagination to work on page set as front page
- How to group only VISIBLE posts? [closed]
- Shortcode with ‘year’ parameter
- search blog posts by author first name and or last name
- unique post in “$args” of wp_query display more than one post
- Display current post position in Elementor Posts widget
- How to give classname to post if post has no content?
- Custom wp-query in wordpress rest api
- If no posts exist for current day and month, show the next available day of posts
- How to display post list in a table layout (multiple queries in single loop)
- Not all posts showing in query
- Get all custom posts with a certain taxonomy
- Link to date_query results in WordPress
- When WP_Query only returns 1 post, how do I automatically redirect to that post?
- WordPress query portfolio posts
- Get latest author posts inside the loop
- Limiting post list by taxonomy
- Display 3 posts with different HTML markup using a loop
- Is there a function to get post info for any publish_status by post ID?
- Optimal WP Web App Backend for mobile app development
- How to show multiple posts thumbnail, title and date in widget
- Group first, 2nd, 3rd, etc posts by category terms
- Manipulated offset and pagination, can’t display last post anymore
- Function is printing twice – any suggestions?
- How to display particular set of wordpress post on a webpage?
- query posts with selected post ids first
- How to use two query result together in one loop
- show loop id post , only first id can read
- How to get value of a selected option from select tag and use it in WP_query to filter posts?
- Counting Posts by Category
- show image gallery in archives or category page
- Page with Category Returning 1
- filter posts based on menu_order
- Show 5 posts and than 3 posts offset with pagination
- Change archive results based on GET request
- wp_query args with relation
- Get 5 most recent categories
- Wp_query loop is not working as it should
- Show all posts from the tags without having to set all of them
- Is it possible to query a category with specified posts?
- Creating Ordered Query using Meta_key
- Is there a global page/post/product/anything ID?
- WordPress loop uses unmodified posts array, why?
- wp query custom orderby not custom field
- Show posts between two Custom Fields date
- Query to get data of a post, if in category?
- Order posts by custom field
- Why I have this strange behavior when I try to exlude the featured post from posts visualization?
- Remove duplicated posts in the loop if post has more than one category
- How to Include a common category in a custom Category Search
- Why I getting only 1 post?
- The next_posts_link() works only with original $wp_query
- wp_query posts sorting doesn’t work
- Limit amount of pages shown in pagination within wp_query
- custom sort posts in archive/taxanomy page
- First post in loop displays twice
- Trying to create shortcode listing custom posts, but formating not being included
- Show Title/Date/Excerpt of first post & only Title for rest in Query [duplicate]
- Get related posts matching most of the provided tags using WP_Query
- WP_Query post_tilte search in posts table