как показать более одного сообщения в три столбца запроса

У меня есть следующие коды:

<div class="container"> <div class="row"> <?php $slider_qu= new WP_Query(array( 'post_type' => 'post', 'post_status' => 'publish', 'cat' =>'', 'order' => 'title', 'orderby' => 'date', 'posts_per_page' =>'5', )); while ( $slider_qu->have_posts() ) : $slider_qu->the_post(); $src = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), false, '' ); //Show the left hand side column if($counter == 1) : ?> <div class="col-md-3 col-sm-3 col-xs-12 pad"> <a href="<?php the_permalink() ?>" rel="bookmark" alt="<?php the_title_attribute(); ?>"> <div class="imgcontainer" style="background:<?php echo get_post_meta($post->ID, 'feature_bg', true); ?> url(<?php echo $src[0]; ?>);" > <div class="Details"><h2><?php the_title_attribute(); ?></h2> <span class="Date pull-right"><?php the_time( get_option('date_format') ); ?></span> <span class="pull-left commentsNumerous" href="#"><i class="fa fa-comment"></i><?php comments_popup_link(__('0'), __('1'), __('%')); ?></span> </div> </div></a> </div> <?php //Show the middle column elseif($counter == 2) : ?> <div class="col-md-6 col-sm-6 col-xs-12 pad"> <a href="<?php the_permalink() ?>" rel="bookmark" alt="<?php the_title_attribute(); ?>"> <div class="imgcontainer" style="background:<?php echo get_post_meta($post->ID, 'feature_bg', true); ?> url(<?php echo $src[0]; ?>);" > <div class="Details"><h2><?php the_title_attribute(); ?></h2> <span class="Date pull-right"><?php the_time( get_option('date_format') ); ?></span> <span class="pull-left commentsNumerous" href="#"><i class="fa fa-comment"></i><?php comments_popup_link(__('0'), __('1'), __('%')); ?></span> </div> </div></a> </div> <?php //Show the right hand side column elseif($counter == 3) : ?> <div class="col-md-3 col-sm-3 col-xs-12 pad"> <a href="<?php the_permalink() ?>" rel="bookmark" alt="<?php the_title_attribute(); ?>"> <div class="imgcontainer" style="background:<?php echo get_post_meta($post->ID, 'feature_bg', true); ?> url(<?php echo $src[0]; ?>);" > <div class="Details"><h2><?php the_title_attribute(); ?></h2> <span class="Date pull-right"><?php the_time( get_option('date_format') ); ?></span> <span class="pull-left commentsNumerous" href="#"><i class="fa fa-comment"></i><?php comments_popup_link(__('0'), __('1'), __('%')); ?></span> </div> </div></a> </div> <div class="clear"></div> <?php endif; ?> <?php $counter = ($counter == 3) ? 1 : ($counter + 1); endwhile; ?> </div></div> 

который @Howdy_McGee напишет его здесь, но его единственное шоу 1 сообщение в каждом div, но я хочу, чтобы он показывал 2 в первом div, а затем 1 во втором погружении и еще 2 сообщения в третьем div, поэтому я могу сделать этот слайдер сетки загрузки.

Solutions Collecting From Web of "как показать более одного сообщения в три столбца запроса"

Я не тестировал его, но вижу, работает ли это

Присвоить значения переменным до начала цикла while

 $c = 1; $counter = 5; 

Измените все $ couter, если условия

 if($counter == 1) if($counter == 2) if($counter == 3) 

в это соответственно

 if($counter % $c==1 || $counter % $c==2) if($counter % $c==3) if($counter % $c==4 || $counter % $c==0) 

Наконец, до конца каждого счетчика $, если условия (в последней строке каждого $ counter if condtion) вам нужно увеличить $ c, как это

$ С = $ с + 1;

ПРИМЕЧАНИЕ. Прежде чем пытаться, сделайте резервную копию своего кода.

ОБНОВИТЬ

Фактическая проблема вашего ранее опубликованного ответа на мой и мой вопрос заключалась в том, что мы помещали DIV внутри цикла, чтобы он создавал снова и снова для каждого отдельного сообщения. Вот почему 2 сообщения в одном DIV не показывались. Но теперь я даю вам свое протестированное решение, которое работает в соответствии с вашими требованиями.

Это решение требует 3 цикла while для всех трех разделов, а также различного запроса для разных циклов while. И на этот раз я использую Div вне цикла while, чтобы он не получал создание снова и снова. Хотя может быть способ сделать это только с одним циклом while. Но я не мог понять, поэтому я использую 3 цикла в этом решении.

Левый DIV

 <?php global $myOffset; //Setting query for Left DIV $paged = get_query_var('paged') ? get_query_var('paged') : 1; $args = array( 'post_type' => 'post', //Post type 'posts_per_page' => 2, //No. of posts 'paged' => $paged //For pagination(optional) ); $loop = new WP_Query( $args ); ?> <div class="left" style="width:30%;float:left;"> <?php //While loop to show 2 posts in Left DIV while ( $loop->have_posts() ) : $loop->the_post(); ?> <h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><font style="color:#666666;"><?php the_title();?></a><span style="/* color: #d9d9d9; */font-size: 12px;">&nbsp;(<?php echo get_the_date('dmY');?>)</span></h3> <?php endwhile; //End of while loop of Left DIV ?></div> 

Средний DIV

 <?php //Setting query for Middle DIV $myOffset = 2; $paged = get_query_var('paged') ? get_query_var('paged') : 1; $args = array( 'post_type' => 'post', //Post type 'posts_per_page' => 1, //No. of posts to show 'offset' => $myOffset, //Excluding latest posts 'paged' => $paged ); $loop = new WP_Query( $args ); ?> <div class="middle" style="width:30%;float:left;"> <?php //While loop to show 1 post in Middle DIV while ( $loop->have_posts() ) : $loop->the_post(); ?> <h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><font style="color:#666666;"><?php the_title();?></a><span style="/* color: #d9d9d9; */font-size: 12px;">&nbsp;(<?php echo get_the_date('dmY');?>)</span></h3> <?php endwhile; //End of while loop of Middle DIV ?></div> 

Правый DIV

 <?php //Setting query for Right DIV $myOffset = 3; $paged = get_query_var('paged') ? get_query_var('paged') : 1; $args = array( 'post_type' => 'post', 'posts_per_page' => 2, //No. of posts 'offset' => $myOffset, //excluding latest posts 'paged' => $paged ); $loop = new WP_Query( $args ); ?> <div class="right" style="width:30%;float:left;"> <?php //While loop to show 2 posts in Right DIV while ( $loop->have_posts() ) : $loop->the_post(); ?> <h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><font style="color:#666666;"><?php the_title();?></a><span style="/* color: #d9d9d9; */font-size: 12px;">&nbsp;(<?php echo get_the_date('dmY');?>)</span></h3> <?php endwhile; //End of while loop of Right DIV ?></div> <?php 

Это всего лишь пример (проверенный), в котором я только показываю заголовок сообщений (ничего больше). Вы должны поместить свою структуру div внутри каждого цикла в соответствии с вашими потребностями.