Очень легко добавлять последние сообщения из каждой категории.
Прежде всего, получите все категории блога, используя следующий код:
$categories = get_categories();
Затем используйте foreach ( $categories as $category ) {}
, чтобы сообщитьWordPress запускает каждую из этих категорий по очереди и запускает код внутри фигурных скобок.
Теперь вам нужно определить аргументы для вашего запроса.Добавьте в фигурные скобки это:
$args = array(
'cat' => $category->term_id,
'post_type' => 'post',
'posts_per_page' => '1',
);
Далее вставьте свой запрос, используя класс WP_Query:
$query = new WP_Query( $args );
if ( $query->have_posts() ) { ?>
<section class="<?php echo $category->name; ?> listing">
<h2>Latest in <?php echo $category->name; ?>:</h2>
<?php while ( $query->have_posts() ) {
$query->the_post();
?>
<article id="post-<?php the_ID(); ?>" <?php post_class( 'category-listing' ); ?>>
<?php if ( has_post_thumbnail() ) { ?>
<a href="<?php the_permalink(); ?>">
<?php the_post_thumbnail( 'thumbnail' ); ?>
</a>
<?php } ?>
<h3 class="entry-title">
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a>
</h3>
<?php the_excerpt( __( 'Continue Reading <span class="meta-nav">→</span>', 'twentyfourteen' ) ); ?>
</article>
<?php } // end while ?>
</section>
<?php } // end if
// Use reset to restore original query.
wp_reset_postdata();
Это отобразит все сообщения категории на вашей домашней странице.Пожалуйста, попробуйте использовать его и дайте мне знать, если у вас есть какие-либо проблемы.