Задать вопрос
  • Как добавить пагинацию для кастомного запроса в WP?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Если нужна пагинация, то не используйте get_posts(). Вместо этого используйте WP_Query().

    <?php
    // На какой мы странице?
    $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
    
    // Параметры запроса и запрос
    $args = array( 
        'posts_per_page' => 5, 
        'category_name' => 'Some Category', // тут имя категории
        'paged' => $paged,
        'post_type' => 'post' 
    );
    $posts = new WP_Query( $args );
    
    // Луп
    if ( $posts->have_posts() ) :
    
        while ( $posts->have_posts() ) : $posts->the_post(); ?>
    
        <article>
            <h3><?php the_title(); ?></h3>
            <div><?php the_content(); ?></div>
        </article>
    
        <?php
        endwhile;  
    
        // Ссылки вперед-назад
        next_posts_link( 'Предыдущая страница', $posts->max_num_pages );
        previous_posts_link( 'Следующая страница' ); 
    
        wp_reset_postdata();
    
    endif; ?>
    Ответ написан
    Комментировать