Поддержка Проблемы и решения query_string пустой

  • Решено Alex

    (@wayfindertm)


    Столкнулся с такой проблемой, нужно изменить количество выводимых постов, добавил код:

    global $wp_query;
    $args = array_merge( $wp_query->query_vars, array( 'posts_per_page' => '6' ) );
    query_posts( $args );

    но на второй странице у меня $wp_query пустой

    URL для первой страницы http://example.com/?cat=13 для второй http://example.com/?cat=13&paged=2

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Автор Alex

    (@wayfindertm)

    первая страница отображается нормально, 6 постов, пагинация pagenavi

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Для изменения основного запроса вместо query_posts() рекомендуется использовать действие pre_get_posts (пример).

    Автор Alex

    (@wayfindertm)

    Огромное спасибо, добавил в functions

    function my_pre_get_posts( $query ) {
        if ( is_category('название_категории') && $query->is_main_query() ) {
            $query->set( 'posts_per_page', 6 );
        }
    }
    add_action( 'pre_get_posts', 'my_pre_get_posts' );

    все работает без проблем

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «query_string пустой» закрыта для новых ответов.