Как вывести посты в Wordpress с разными контейнерами
Мне нужно правильно построить цикл, для вывода постов Идея такая: Есть два контейнера latest_post и all_posts.
Открываем latest_post в него помещаем один item_post Закрываем контейнер latest_post Открываем контейнер all_posts в него помещаем шесть item_post
Открываем latest_post в него помещаем один item_post Закрываем контейнер latest_post Открываем контейнер all_posts в него помещаем шесть item_post Закрываем контейнер item_post
итд
<?php
$args = array(
'post_type' => 'post',
'publish' => true,
);
query_posts($args);
if (have_posts()) : ?>
<?php
$i = 0;
?>
<?php while (have_posts()) : the_post(); ?>
<?php
$i++;
if ($i > 7) {
$i = $i - 7;
}
?>
<?php
if ($i == 1) {
echo '
<div class="latest_post" data-sidebar-position>
<div class="container">
<div class="row">
<div class="col-12 col-xl-9">
<!-- Posts-->
<div class="row">
<!-- Post Item-->
<div class="col-12"><a class="card card_type_2" href="'; echo the_permalink() . '">
<div class="card__container">
<div class="card__image">'; echo the_post_thumbnail(array(0, 9999), array('class' => 'd-none', 'loading' => 'lazy')) . '</div>
<div class="card__content">
<div class="card__post_container">
<div class="card__post_name">'; echo the_title() . '</div>
</div>
</div>
</div></a></div>
<!-- Post Item-->
</div>
<!-- / Posts-->
</div>
<div class="sidebar_width d-none d-xl-block col-xl-3">
<div class="position-relative"></div>
</div>
</div>
</div>
</div>
';
}
?>
<?php
if ($i == 2) {
echo '
<div class="all_posts">
<div class="container">
<div class="row">
<div class="col-12 col-xl-9">
<div class="row">';
}
?>
<?php
if ($i > 1){
echo '
<!-- Post Item-->
<div class="col-6 col-lg-4"><a class="card card_type_1" href="'; echo the_permalink() . '">
<div class="card__container">
<div class="card__image">
<div class="card__image__container">'; echo the_post_thumbnail(array(0, 9999), array('class' => 'd-none', 'loading' => 'lazy')) . '</div>
</div>
<div class="card__content">
<div class="card__post_container">
<div class="card__post_container__flex_0">
<div class="card__post_name">'; echo mb_strimwidth(get_the_title(), 0, 15, '...') . '</div>
<div class="card__post_text">'; echo mb_strimwidth(get_the_excerpt(), 0, 75, '...') . '</div>
</div>
<div class="card__post_container__flex_1">
<div class="card__pseudo_link">Читать</div>
</div>
</div>
</div>
</div></a></div>
<!-- Post Item-->
';
}
?>
<?php
if ($i == 7) {
echo '
</div>
</div>
</div>
</div>
</div>
';
}
?>
<?php
if ($i == 8) {
echo '
<div class="latest_post">
<div class="container">
<div class="row">
<div class="col-12 col-xl-9">
<!-- Posts-->
<div class="row">
<!-- Post Item-->
<div class="col-12"><a class="card card_type_2" href="'; echo the_permalink() . '">
<div class="card__container">
<div class="card__image">'; echo the_post_thumbnail(array(0, 9999), array('class' => 'd-none', 'loading' => 'lazy')) . '</div>
<div class="card__content">
<div class="card__post_container">
<div class="card__post_name">'; echo the_title() . '</div>
</div>
</div>
</div></a></div>
<!-- Post Item-->
</div>
<!-- / Posts-->
</div>
<div class="sidebar_width d-none d-xl-block col-xl-3">
<div class="position-relative"></div>
</div>
</div>
</div>
</div>
';
}
?>
<?php
if ($i == 9) {
echo '
<div class="all_posts">
<div class="container">
<div class="row">
<div class="col-12 col-xl-9">
<div class="row">';
}
?>
<?php
if ($i > 8){
echo '
<!-- Post Item-->
<div class="col-6 col-lg-4"><a class="card card_type_1" href="'; echo the_permalink() . '">
<div class="card__container">
<div class="card__image">
<div class="card__image__container">'; echo the_post_thumbnail(array(0, 9999), array('class' => 'd-none', 'loading' => 'lazy')) . '</div>
</div>
<div class="card__content">
<div class="card__post_container">
<div class="card__post_container__flex_0">
<div class="card__post_name">'; echo mb_strimwidth(get_the_title(), 0, 15, '...') . '</div>
<div class="card__post_text">'; echo mb_strimwidth(get_the_excerpt(), 0, 75, '...') . '</div>
</div>
<div class="card__post_container__flex_1">
<div class="card__pseudo_link">Читать</div>
</div>
</div>
</div>
</div></a></div>
<!-- Post Item-->
';
}
?>
<?php
if ($i == 14) {
echo '
</div>
</div>
</div>
</div>
</div>
';
}
?>
<?php endwhile; /* rewind or continue if all posts have been fetched */ ?>
<?php bootstrap_pagination(); ?>
<?php else : ?>
<?php endif; ?>
<?php wp_reset_query();?>