Как показывать столбцы в разных категориях в одной строке или строке?

Я использую настраиваемый запрос, извлекающий две категории типа сообщения, каждый столбец показывает только 6 должностей категории, если это больше используется для разбивки на страницы.

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

Действительно оценивайте любые комментарии или идеи, чтобы решить эту проблему, на самом деле не знали, как это сделать.

Вот пользовательский запрос, который я использую:

<?php // for a given post type, return all $post_type = 'evento'; $tax = 'categorias-eventos'; $tax_terms = get_terms($tax); $post_counter = 0; // reset so we can generate columns $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; if ($tax_terms) { ?> <ul class="column_wrap" style="width:45%; float:left;"> <?php foreach ($tax_terms as $tax_term) { $args = array( 'post_type' => $post_type, "$tax" => $tax_term->slug, 'post_status' => 'publish', 'posts_per_page' => 6, //'posts_per_page' => -1, //'paged' => $paged, 'orderby' => 'title', 'order' => 'ASC', 'caller_get_posts' => 1 ); // END $args $my_query = null; // clear the query variable $my_query = new WP_Query($args); if( $my_query->have_posts() ) { ?> <li class="column_row" style="float:left;"> <h4><?php echo $tax_term->name; ?></h4> </li> <?php while ($my_query->have_posts()) : $my_query->the_post(); ?> <li class="column_row" style="float:left;"> <div class="retailer_wrap retailer_id-<?php the_ID(); ?>"> <p><strong><?php the_title(); ?></strong></p> <p><?php echo get_post_meta($post->ID, 'eventdate', true);?></p> <p><?php echo get_post_meta($post->ID, 'eventplace', true);?></p> </div> </li> <?php $post_counter++; ?> <?php if ( 0 == $post_counter % 6 ) { ?> </ul> <ul class="column_wrap noneed" style="width:45%; float:left;"> <?php } // END if $post_counter ?> <?php endwhile; //wp_pagenavi( array( 'query' => $my_query ) ); } // END if have_posts loop wp_reset_query(); } // END foreach $tax_terms ?> </ul> <?php } // END if $tax_terms ?> 

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

Один из способов вывода одного и того же запроса, но по-другому, заключается в том, чтобы использовать current_post или в сочетании с rewind_posts или использовать только rewind_posts .

Так, например:

Ваш первоначальный запрос

  if ($my_query->have_posts()) :while ($my_query->have_posts()) : $my_query->the_post(); $counter_id = $my_query->current_post + 1; //this is the counter // then use a conditional to style each on based on `# or % if ($wp_query->current_post % 2 == 0) // add custom styles endwhile; else: // // Or rewind the post with a count and conditional rewind_posts(); //rewind the post back to the start if $counter_id == 1 //do some style if $counter_id > 3 // do some style //etc 

Еще один простой вариант – просто использовать несколько отдельных циклов (и запрос БД)

Я надеюсь, что эта логика имеет смысл и помогает, у меня нет времени, чтобы написать свой запрос и протестировать его.