我已经设置了一个基本主页,每页显示3篇文章,并通过分页来浏览这些页面。目前它只显示第1页和第1页的分页。 2,不多,即使我有12篇文章,结果4页。我不太确定我在哪里出错:
<?php
$paged = (get_query_var('paged'))? get_query_var('paged') : '1';
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'paged' => $paged,
'posts_per_page' => 2
);
$the_query = new WP_Query( $args );
while ($the_query -> have_posts()) : $the_query -> the_post();
include(locate_template('content-post.php' ));
endwhile;
?>
<?php the_posts_pagination( array('mid_size' => 3) ); ?>
答案 0 :(得分:1)
the_posts_pagination 使用默认WP查询,因此无法在此处运行。你可以试试下面的代码:
<?php
if ( get_query_var('paged') ) { $paged = get_query_var('paged'); } else if ( get_query_var('page') ) {$paged = get_query_var('page'); } else {$paged = 1; }
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'paged' => $paged,
'posts_per_page' => 2
);
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query($args);
while ($wp_query -> have_posts()) : $wp_query -> the_post();
include(locate_template('content-post.php' ));
endwhile;
the_posts_pagination( array('mid_size' => 3) );
$wp_query = null;
$wp_query = $temp;
wp_reset_query();
?>
代码在完美的工作中经过测试。
答案 1 :(得分:0)
使用此插件Click here
并使用此短代码进行分页<?php wp_pagenavi(); ?>
我使用完全跟随循环来实现我的项目及其工作。
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args= array(
'cat' => '',
'orderby'=> 'date',
'order'=> 'DESC',
'paged' => $paged ,
'posts_per_page' => 3
);
query_posts($args);
if (have_posts()) :
while (have_posts()):
the_post();
endwhile;
endif;
?>
请试一试。希望它也适合你。
如果您要在主页上显示帖子,则需要替换
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
带
<?php
if ( get_query_var('paged') )
{
$paged = get_query_var('paged');
}
else if ( get_query_var('page') )
{
$paged = get_query_var('page');
}
else
{
$paged = 1;
}
答案 2 :(得分:0)
问题是$ paged =(get_query_var('paged'))吗? get_query_var('paged'):1;检索主查询对象的数据,但不检索自定义对象的数据。 我在这里https://wordpress.stackexchange.com/questions/120407/how-to-fix-pagination-for-custom-loops
找到了解决方案答案 3 :(得分:0)
您的代码对我来说还不错。我遇到了同样的问题,我通过将posts_per_page
与管理控制台中Blog pages show at most
中的Settings->Reading
字段进行匹配来解决了该问题
示例:
"posts_per_page" => 6
,然后Blog pages show at most
也应为6
我希望这会有所帮助。