Основной хук на котором можно отфильтровать посты —
pre_get_posts
add_action( 'pre_get_posts', 'include_category_posts' );
function include_category_posts( $query ) {
if ( $query->is_category() && get_queried_object()->count <= 6 ) {
$query->set( 'cat', '13' );
}
}
С помощью
get_queried_object()->count
вы получаете количество постов из категории и, если их меньше определенного количества, то добавляете в запрос посты из еще одной категории
Так же вы можете написать чуть более сложную логику, посчитать сколько именно вам не хватает постов и добавить недостающие с помощью
post__in
$query->set( 'post__in', array( 5, 12, 2, 14, 7 ) );