• Главная
  • Вывести на странице родительской категории ее подкатегории списком и в подкатегориях вывести записи, которые относятся к ним

Вывести на странице родительской категории ее подкатегории списком и в подкатегориях вывести записи, которые относятся к ним

28 февраля 2023
<?php
    // Получить подкатегории текущей родительской категории
    $categories = get_categories( array(
        'parent' => get_query_var( 'cat' ),
        'hide_empty' => false, 
        'orderby'    => 'ID', 
        'order'      => 'ASC', 
    ) );

    // Если есть подкатегории, то выводим записи внутри них
    if ( $categories ) :
        foreach ( $categories as $category ) :
            $args = array(
                'post_type' => 'post',
                'posts_per_page' => -1,
                'category__in' => array( $category->term_id )
            );
            $query = new WP_Query( $args );

            // Если есть записи, то выводим их внутри подкатегории
            if ( $query->have_posts() ) : ?>
                <h2><?php echo $category->name; ?></h2>
                <ul>
                    <?php while ( $query->have_posts() ) : $query->the_post(); ?>
                        <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
                    <?php endwhile; ?>
                </ul>
            <?php endif;

            // Сбросить запрос для следующей итерации
            wp_reset_postdata();
        endforeach;
    else :
        // Если нет подкатегорий, то выводим записи текущей категории
        if ( have_posts() ) :
            while ( have_posts() ) : the_post(); ?>
                <!-- Здесь может быть HTML-код, если нужно -->
                <h2><?php the_title(); ?></h2>
                <div><?php the_content(); ?></div>
                <!-- Здесь может быть еще HTML-код, если нужно -->
            <?php endwhile;
        endif;
    endif;
?>
Закажите у меня разработку сайта под ключ
и получите логотип в подарок в векторе и с исходниками
Заказать разработку
Контакты

Работаем: с ПН по ПТ, с 08:00 до 16:00 (МСК)
Отдыхаем: в СБ и ВС, чтобы быть в тонусе
и реализовывать самые сложные идеи