我在Wordpress 4.6.1上使用了Buddypress 2.7.2。
我在BuddyPress上使用bp_core_new_nav_item()函数添加了一个新页面来扩展页面。
在该页面上,每页有十个Post-type artcles,分页显示在页面下方。
但是,如果我单击页面的第2页或更高版本,我找不到链接目标。我在添加的页面上写了如下。
<?php
$paged = get_query_var('paged');
$args = array(
'posts_per_page' => 10,
'paged' => $paged,
'orderby' => 'post_date',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish'
);
$the_query = new WP_Query($args);
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<?php get_template_part( 'content', get_post_format() ); ?>
<?php endwhile; ?>
<?php
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $the_query->max_num_pages
) );
?>
<?php else: ?>
<?php get_template_part( 'content', 'none' ); ?>
<?php endif; ?>
例如,分页链接如下
第1页
首页不是问题。
[这不是链接](http://example.com/member/username/custom/
2页后
链接目的地不存在
[这不是链接](http://example.com/member/username/custom/page/2/ page / 3 / page / 4 / ........
我不知道为什么我找不到2页或更晚。 如果您知道解决方案,请告诉我。
答案 0 :(得分:0)
这是在你的情况下处理分页的一种方法。它可能不是最好的或“正确”的方式......
将$paged
值添加到网址。
例如:
$paged = ( isset( $_GET['xj'] ) ) ? $_GET['xj'] : 1;
$args = array( ... etc.
然后调整您的分页以使用该变量:
echo paginate_links( array(
'base' => esc_url( add_query_arg( 'xj', '%#%' ) ),
'format' => '',
'total' => ceil( (int) $wp_query->found_posts / (int) get_query_var('posts_per_page') ),
'current' => (int) get_query_var('paged'),
) );