当前分页链接没有'激活,“下一步”、“上一步”不起作用


Current pagination link doesn't active and Next,Previous doesn't work

我试图实现分页或分页,同时通过自定义查询从数据库检索所有帖子。我想在每个页面上显示3个帖子。从逻辑上讲,它工作得很好。例如,如果我点击第一页,它显示1,2,3个帖子,如果我点击第二页,它显示4,5,6个帖子。

但问题是-1. 如果我点击任何页码链接,如1或2或3,那么每次选择的页面应该是活跃的,但在我的程序中总是第一个页码链接是活跃的。

  • 如果我点击下一步,它总是转到第二页。

  • 上一个链接不显示

    <?php 
    $per_page = 3;
    $page = isset( $_GET['cpage'] ) ? abs( (int) $_GET['cpage'] ) : 0;
    if($page>0)
    $page = $page*$per_page-$per_page;
    $querystr = "
    SELECT $wpdb->posts.* 
    FROM $wpdb->posts, $wpdb->postmeta
    WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id 
    AND $wpdb->postmeta.meta_key = '_edit_last' 
    AND $wpdb->postmeta.meta_value = '1' 
    AND $wpdb->posts.post_status = 'publish' 
    AND $wpdb->posts.post_type = 'post'
    AND $wpdb->posts.post_date < NOW()
    ORDER BY $wpdb->posts.post_date DESC LIMIT $per_page offset $page";
    $pageposts = $wpdb->get_results($querystr, OBJECT);
    ?>
    <?php if ($pageposts): ?>
    <?php global $post;?>
    <?php foreach ($pageposts as $post): ?>
    <?php setup_postdata($post);?>
    <div class="post" id="post-<?php the_ID(); ?>">
    <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent     Link to <?php the_title_attribute(); ?>">
    <?php the_title(); ?></a></h2>
    <small><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></small>
    <div class="entry">
       <?php the_content('Read the rest of this entry »'); ?>
    </div>
    <p class="postmetadata">Posted in <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?>  
    <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p>
    

  • 分页

     <?php 
    $querystr2 = "
        SELECT count(*)
        FROM $wpdb->posts, $wpdb->postmeta
        WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id 
        AND $wpdb->postmeta.meta_key = '_edit_last' 
        AND $wpdb->postmeta.meta_value = '1' 
        AND $wpdb->posts.post_status = 'publish' 
        AND $wpdb->posts.post_type = 'post'
        AND $wpdb->posts.post_date < NOW()
        ORDER BY $wpdb->posts.post_date DESC
     ";
    $totalPosts = $wpdb->get_var($querystr2);
    echo paginate_links( array(
     'base' => add_query_arg( 'cpage', '%#%' ),
        'format' => '',
        'prev_text' => __('Previous'),
        'next_text' => __('Next'),
        'total' => ceil($totalPosts / $per_page),
        'current' => $page
    ));
    ?>
    

    有没有人可以尝试解决这个问题或在我的代码中找到错误?

    最后,这个链接解决了在自定义页面或模板文件上显示WP帖子的所有问题。

    带分页的自定义WordPress循环