#php #wordpress
#php #wordpress
Вопрос:
Я перелил десятки сообщений и документацию, ничего не помогло.
У меня очень простая проблема: я хочу запросить все сообщения некоторой категории, а затем разделить результаты на страницы. Я пробовал несколько разных вещей, но, по сути, next_posts_link() и get_next_posts_link() никогда ничего не возвращают.
Последний код:
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'posts_per_page' => 6,
'paged' => $paged,
'cat' => 135
);
$query = new WP_Query( $args );
?>
<?php if ( $query->have_posts() ) : while ( $query->have_posts() ) : $query->the_post(); ?>
<div class="med-item talks-texts">
<p class="bold"><?php the_title(); ?> (<?php the_time('Y'); ?>)</p>
<?php the_content(); ?>
</div>
<?php endwhile; endif; ?>
<?php next_posts_link(); ?>
Ответ №1:
Добавьте параметры в функцию. В вашем случае:
<?php echo get_next_posts_link('Older', $query->max_num_pages);?>
<?php echo get_previous_posts_link('Newer', $query->max_num_pages);?>
Ответ №2:
Мне кажется, что next_post_link() должен быть внутри цикла. У вас есть это снаружи. Подробнее об этом конкретном варианте использования в документах WP для этой функции здесь:
https://developer.wordpress.org/reference/functions/next_posts_link/#div-comment-1297
Обратите внимание на дополнительный параметр, необходимый для пользовательского WP_Query, поскольку это то, что вы используете здесь. Короче говоря:
// next_posts_link() usage with max_num_pages.
next_posts_link( __( 'Older Entries', 'textdomain' ), $the_query->max_num_pages );