我使用以下代码来处理WordPress分页。例如,如果用户转到第9页,我的代码将回显此URL 'http://jjh.com/Cute/page/9/?post_per_page=60'。
我的问题是:
每当我更改post_per_page
号码时,我可以将页面重置为1吗?
我允许用户更改此参数,我想在使用它时重置为顶部。
<?php
//I cut some unnecessary code
// I have a select dropdown to select post_per_page
$arg = array(
'post_type' => 'post',
'posts_per_page' => $post_per_page,
'cat' => $page_cat,
'paged' => $paged,
'offset' => $offset,
'prev_text' => __('«'),
'next_text' => __('»'),
'mid_size' => 2
);
$wp_query = new WP_Query($arg);
echo paginate_links( $arg );
?>
答案 0 :(得分:0)
试试这段代码:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$post_type = 'post';
$args=array(
'post_typr' => $post_type,
'cat' =>3,
'posts_per_page' => 6,
'paged' => $paged,
'orderby' => 'title',
'order' => 'asc'
);
$my_query = null;
$my_query = new WP_Query($args);
在查询<?php if ($my_query->have_posts() ) :
while ($my_query->have_posts()) : $my_query->the_post(); ?>
在查询结束标记之后使用<?php
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', get_pagenum_link( $big ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $my_query->max_num_pages
) );
?>
然后关闭if语句。 <?php endif; wp_reset_query();?>