Я использую код ниже, чтобы показать 3 сообщения из 3 выбранных категорий в разделе. Я хочу, чтобы название каждой категории появлялось один раз перед публикацией. Код работает, и я также видел этот пост ( показывает заголовки постов под каждой категорией wordpress ), но я хотел бы, чтобы вы указали, если это правильный / эффективный способ сделать это.
<?php
$catids = [ 31, 33, 35 ];
foreach ( $catids as $catid ) {
$my_query = new WP_Query( [
'cat' => $catid,
'posts_per_page' => 3,
'no_found_rows' => true,
'update_post_term_cache' => false,
'update_post_meta_cache' => false ] );
$category_name = get_cat_name( $catid );
$category_link = get_category_link( $catid ); ?>
<article class="simple-box">
<a href='<?php echo esc_url($category_link) ?>' title='<?php echo
$category_name ?>'>
<h3> <?php echo $category_name; ?> </h3>
</a>
<?php
if ( $my_query->have_posts() ): while ( $my_query->have_posts() ): $my_query->the_post(); ?>
<a class="post-data" href='<?php the_permalink(); ?>' title='<?php the_title_attribute(); ?>'>
<h1 class="post-title"><?php echo get_the_title();?></h1>
<p class="post-excrept"><?php echo get_the_excerpt();?></p>
</a>
</article>
<?php
endwhile; endif;
}
wp_reset_postdata(); ?>