@ssawyer

Как вывести произвольные типы записей с разным шаблоном?

Привет, мучаюсь с проблемой вывода произвольных типов записей.

Выводит со счетчиком так:
spoiler
63bc09d1b08c1925913890.png

Код вывода

<!-- Начинается петля -->

<?php $portfolio = new WP_Query( array( 'post_type' => 'portfolio', 'posts_per_page' => 24 ) ); ?>
<?php if ( have_posts() ) : 
  $i = 1;
?>
<?php while ( $portfolio->have_posts() ) : $portfolio->the_post(); 


if ( in_array( $i, array( 3, 4 ), true ) ) {
    ?>
                <div class="portfolio__item item_big">
                <?php the_post_thumbnail(); ?>
            </div>

    <?php
  } else {
    ?>
            <div class="item_small">
                <div id="post-<?php the_ID(); ?>" class="portfolio__item">
                <?php the_post_thumbnail(); ?>
                </div>
            </div>
    <?php
  }

?>



<?php 
$i++;
endwhile; 
endif;
?>
<?php wp_reset_postdata(); ?> 

<!-- Заканчивается петля -->



А нужно вывести так:
Т.е в диве item_small должны выводиться 2 поста
spoiler

63bc0a3155a56575649693.png


Разметка на флексах
  • Вопрос задан
  • 55 просмотров
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
Т.е в диве item_small должны выводиться 2 поста

Самым очевидным решением "в лоб" будет что-то такое:
...
} else {
    ?>
            <div class="item_small">
                <div id="post-<?php the_ID(); ?>" class="portfolio__item">
                <?php the_post_thumbnail(); ?>
                </div>

                <?php $portfolio->the_post(); $i++; ?>

                <div id="post-<?php the_ID(); ?>" class="portfolio__item">
                <?php the_post_thumbnail(); ?>
                </div>
            </div>
    <?php
  }
...
Ответ написан
Комментировать
@sergo573
Для построения нужного шаблона используйте "offset", и будет вам счастье :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы