Подскажите как в WP вывести посты и к добавить класс ко 2 и3?
<?php
// параметры по умолчанию
$args = array(
'numberposts' => 3,
'category' => 5,
'orderby' => 'date',
'order' => 'ASC',
'post_type' => 'post',
'suppress_filters' => true, // подавление работы фильтров изменения SQL запроса
);
$posts = get_posts( $args );
foreach($posts as $post){ setup_postdata($post);
?>
<?php the_post_thumbnail();?>
<?php
}
wp_reset_postdata(); // сброс
?>
**что бы структура была вот такая
<div class="page__item" data-da=".c, 767.8">
<img src="<?php bloginfo( 'template_url' );?>/assets/img/14.jpg" alt="Image" />
<img src="<?php bloginfo( 'template_url' );?>/assets/img/15.jpg" alt="Image" class="anim01" />
<img src="<?php bloginfo( 'template_url' );?>/assets/img/16.jpg" alt="Image" class="anim01" />
<img src="<?php bloginfo( 'template_url' );?>/assets/img/17.jpg" alt="Image" class="anim02" />
<img src="<?php bloginfo( 'template_url' );?>/assets/img/18.jpg" alt="Image" class="anim02" />
<img src="<?php bloginfo( 'template_url' );?>/assets/img/19.jpg" alt="Image" />
</div>
**
Ответы (1 шт):
Автор решения: Danila
→ Ссылка
Во-первых, если Вы хотите вывести 6 картинок, то 'numberposts'
должен быть 6, а не 3.
Во-вторых, картинки лучше выводить тегом img
с добавлением в src пути к файлу:
<img src="<?php the_post_thumbnail_url(); ?>" alt="">
Во-третьих, для присвоения класса отдельным картинкам нужно ввести переменную-счётчик, которая при каждой итерации будет увеличиваться на 1, и проверять, какой элемент идёт по счёту. Если 2-й и 3-й - добавляем картинке класс anim01
, если 4-й и 5-й - класс anim02
. А остальным никакой класс не добавляем.
<?php $args = array(
'numberposts' => 6,
'category' => 5,
'orderby' => 'date',
'order' => 'ASC',
'post_type' => 'post',
'suppress_filters' => true,
);
$posts = get_posts( $args ); $i = 1; //добавляем счётчик ?>
<div class="page__item" data-da=".c, 767.8">
<?php foreach($posts as $post) {
setup_postdata($post);
if($i == 2 || $i == 3) { ?>
<img src="<?php the_post_thumbnail_url(); ?>" alt="" class="anim01">
<?php } else if($i == 4 || $i == 5) { ?>
<img src="<?php the_post_thumbnail_url(); ?>" alt="" class="anim02">
<?php } else { ?>
<img src="<?php the_post_thumbnail_url(); ?>" alt="">
<?php } $i++; //инкрементируем счётчик }
wp_reset_postdata(); // сброс ?>
</div>