Wordpress custom разбивка на страницы таксономии не работает

Я использую плагин WP PageNavi для разбивки на страницы. Эта конкретная проблема в том, что не удается получить категорию таксономии-портфолио. php для разбивки на страницы также является проблемой, когда WP PageNavi выключен.

Я чертовски много раз заставлял разбиение на страницы работать на домашней странице и на странице шаблона страницы, но я заставил их работать. Вот их код:

page-home.php (используется в качестве шаблона страницы на статической главной странице под названием «Главная»)

$paged = 1;
if ( get_query_var('paged') ) $paged = get_query_var('paged');
if ( get_query_var('page') ) $paged = get_query_var('page');
$i = 0;
$loop = new WP_Query( array( 'post_type' => 'portfolio', 'paged' => $paged, 'posts_per_page' => 24 ) );
while ( $loop->have_posts() ) : $loop->the_post();
// output
$i++; endwhile;
if ( function_exists( 'wp_pagenavi' ) ) {
    wp_pagenavi( array( 'query' => $loop ) );
    wp_reset_postdata();
}

Разбивка на страницы работает!

page-портфолио.php (используется как шаблон страницы на странице под названием «Работа»)

$i = 0;
$loop = new WP_Query( array( 'post_type' => 'portfolio', 'paged' => get_query_var( 'paged' ), 'posts_per_page' => 24 ) );
while ( $loop->have_posts() ) : $loop->the_post();
// output
$i++; endwhile;
if ( function_exists( 'wp_pagenavi' ) ) {
    wp_pagenavi( array( 'query' => $loop ) );
    wp_reset_postdata();
}

Разбивка на страницы работает!

taxonomy-портфолио-category.php (используется как способ отображения разделов портфолио, например, для печати, фотографии и т. д.)

$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
global $wp_query;
query_posts( array_merge( $wp_query->query, array( 'posts_per_page' => 2 ) ) );
if (have_posts()) : while ( have_posts() ) : the_post();
// output
endwhile; endif;
if ( function_exists( 'wp_pagenavi' ) ) {
    wp_pagenavi();
}

Страница 1 (/ портфолио / интерактивные /) выглядит великолепно! Он определенно публикует только 2 элемента и рассчитывает правильное количество страниц с разбивкой на страницы. Но когда вы нажимаете на страницу 2, 3 или 4 (/ портфолио / interactive / page / 2 /), по умолчанию для сайта используется index.php, и отображается «Страница не найдена». Пагинация не работает!

Надеюсь, я скоро разрешу это. Я видел МНОГО людей с той же проблемой разбивки на страницы на страницах пользовательской таксономии, но у них нет надежных решений. Пожалуйста, помогите!

5
задан Justin Carroll 26 April 2011 в 15:32
поделиться