Привет.
В
category.php добавь:
if( is_category( 't3st' ) ) {
wp_list_categories( [
'child_of' => get_queried_object_id(),
'title_li' => '',
'hide_empty' => true // <- если категория пустая, она не отобразится в списке
] );
}
Это выведет ссылки на дочерние категории в основной (в примере это
t3st).
Сами записи выводятся стандартно, вроде такого:
<?php if ( have_posts() ) : ?>
<?php while( have_posts() ) : the_post(); ?>
<h2><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
<?php endwhile; ?>
<?php else : ?>
<p>No data.</p>
<?php endif; ?>
Записи скрывать я бы не рекомендовал, но если очень нужно именно так, то в
functions.php добавь (с заменой на слаг нужной категории):
add_action( 'pre_get_posts', function( $query ) {
if ( ! is_admin() && is_category( 't3st' ) && $query->is_main_query() ) {
$query->set( 'post__not_in', get_posts( ['fields' => 'ids','numberposts' => -1,'category' => $query->get( 'cat' ),'ignore_sticky_posts' => true] ) );
}
} );
Или сделай отдельный шаблон для нужной категории -
category-t3st.php (этот способ более вменяемый).