Нашел я способ, оказывается было все намного проще чем я думал, надо было лишь добавить elseif и третья колонка заработала.
И всё это делалось, чтобы не создавать три цикла WP_Query, т. е. мне нужно было сделать 3 колонки, и в каждую из них поместить записи.
В первой (first-news) и последней (last-news) использовать
the_post_thumbnail( 'medium' ) и
the_excerpt, а также вывести только по 1 посту, и в оставшейся (center-news) вывести
the_post_thumbnail( 'thumbnail' ) без
the_excerpt + в нем должно быть 3 поста.
Вот код, может кому пригодится:
Длинный код// Создаю цикл
<?php $news = new WP_Query( 'category_name=news&posts_per_page=5' ); // Применяю условия (в данном случае это отобразить 5 постов в категории 'news')
if( $news->have_posts() ) : while( $news->have_posts() ) : $news->the_post(); ?>
// Первая колонка (тут первая запись)
<?php if( 0 == $news->current_post ) { ?>
<div class="first-news">
<?php the_post_thumbnail( 'medium' ); ?>
<?php the_excerpt(); ?>
</div>
// Вторая колонка (тут пятая запись)
<?php } elseif( 4 == $news->current_post ) { ?>
<div class="last-news">
<?php the_post_thumbnail( 'medium' ); ?>
<?php the_excerpt(); ?>
</div>
<?php } else { ?>
// Третья колонка (а тут соответственно с 2 по 4 записи)
<?php if( 1 == $news->current_post ) { echo '<div class="center-news">'; } ?>
<?php the_post_thumbnail( 'thumbnail' ); ?>
<?php if ( 3 == $news->current_post ) { echo '</div>'; } ?>
<?php } endwhile; endif; wp_reset_postdata(); ?> // Завершаю цикл и очищаю