Intereting Posts
Как изменить только часть функции через фильтр Как работает функция построения, даже когда переменной присваивается значение null? Добавление нового значения в существующий мета ключ Как создать мета-поле, которое можно повторить? (с разделом изображения и текстовой областью) Query_posts работает, когда добавление через вызов AJAX wp_query не работает? Отключить редактор содержимого для конкретных страниц Предупреждение: Недопустимое смещение строки на странице параметров темы Мета-описание – код шаблона для получения описания категории Использование apply_filter в классе plugin / widget Показывать сообщения на родительском посту, если автор совпадает Исправить для Chart.js удаление панели администратора Как сделать запрос WordPress для вкладок Bootstrap с помощью субтитров? WordPress JSON api выборку выбранных элементов Как вставить новую строку в url? Отображение количества черновиков в разделе «Сообщения» боковой панели администратора

Добавьте следующие и предыдущие ссылки на страницы, такие как категория, теги или архивные страницы.

Я пытаюсь найти решение для получения следующих страниц для категории или страницы тегов в WordPress, которые пытались использовать next_posts_link и previous_posts_link на этих страницах, но это не работает.

Те же функции работают на странице после листинга для меня

Ниже мой код

 <div class="wrapper inner_content_wrap"> <?php next_posts_link( '<span class="label iconfont"><img src="'.get_template_directory_uri().'/images/pager_arw.png" alt=""></span><span class="entry-info-wrap">Next Entries</span>',3); ?> <?php previous_posts_link( '<span class="label iconfont"><img src="'.get_template_directory_uri().'/images/pager_arw2.png" alt=""></span><span class="entry-info-wrap">previous Entries</span>'); ?> <div class="blog_area"> <div class="container"> <?php if(have_posts()) : $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; $args = array( 'post_type' => 'post', 'posts_per_page' => 3, 'paged' => $paged ); $loop = new WP_Query( $args ); $i = '1'; while ( $loop->have_posts() ) : $loop->the_post(); ?> <?php if($i=='1' || $i%3 =='1') { echo '<div class="blog_post first">';} else { echo '<div class="blog_post">';} ?> <div class="date"><?php the_time('M'); ?><strong><?php the_time('j'); ?></strong></div> <div class="imgbox"> <?php $url = get_the_post_thumbnail($post_id, 'blog_thumb'); echo $url; ?></div> <div class="content"> <h5><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h5> <p><?php the_excerpt(); ?><a href="<?php the_permalink(); ?>">[...]</a></p> <div class="bottom_box"> <?php $categories = get_the_category(); foreach($categories as $category) { echo '<a href="'.get_category_link( $category->term_id ).'" class="button" title="' . esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) ) . '">'.$category->cat_name.'</a>'; }?> <div class="clear"><!-- --></div> </div> </div> </div> <?php $i++; endwhile; else: get_template_part( 'content', 'none' ); endif; wp_reset_postdata(); ?> <div class="clear"><!-- --></div> </div> </div> </div> 

Две проблемы, которые я могу увидеть здесь

Во-первых, вы должны перенести свой запрос за пределы своего условного оператора if .

Во-вторых, при использовании WP_Query параметр $max_pages следует использовать при использовании next_posts_link( $label , $max_pages );

Итак, ваш код должен выглядеть примерно так

 <div class="wrapper inner_content_wrap"> <?php next_posts_link( '<span class="label iconfont"><img src="'.get_template_directory_uri().'/images/pager_arw.png" alt=""></span><span class="entry-info-wrap">Next Entries</span>', $loop->max_num_pages); ?> <?php previous_posts_link( '<span class="label iconfont"><img src="'.get_template_directory_uri().'/images/pager_arw2.png" alt=""></span><span class="entry-info-wrap">previous Entries</span>'); ?> <div class="blog_area"> <div class="container"> <?php $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; $args = array( 'post_type' => 'post', 'posts_per_page' => 3, 'paged' => $paged ); $loop = new WP_Query( $args ); if($loop->have_posts()) : $i = '1'; while ( $loop->have_posts() ) : $loop->the_post(); ?> <-----REST OF YOUR CODE-------> 

Попробуйте использовать get_next_posts_link(); прямо после или вне цикла while. Таким образом, вы использовали бы что-то вроде:

 <?php echo get_next_posts_link(); ?> <?php echo get_previous_posts_link(); ?> 

Чтобы получить больше информации:

http://codex.wordpress.org/Function_Reference/get_next_posts_link