Wordpress自定义分页“下一页”无法正常工作

时间:2016-01-13 05:11:11

标签: wordpress wordpress-plugin wordpress-theming

我在某个地方找到了这个自定义wordpress分页并尝试使用它。分页和“查看全部”功能工作正常,但问题在于“下一个”和“前一个”功能。单击“下一步”按钮时,它会跳到最后一页。你能帮我调试一下这段代码吗?我不是很熟悉php,它实际上是我第一次集成到wordpress。谢谢!

 function numeric_pagination ($pageCount = 9, $query = null) {
        if ($query == null) {
            global $wp_query;
            $query = $wp_query;
        }
        if ($query->max_num_pages <= 1) {
            return;
        }
        $pageStart = 1;
        $paged = $query->query_vars['paged'];
        // set current page if on the first page
        if ($paged == null) {
            $paged = 1;
        }
        // work out if page start is halfway through the current visible pages and if so move it accordingly
        if ($paged > floor($pageCount / 2)) {
            $pageStart = $paged - floor($pageCount / 2);
        }
        if ($pageStart < 1) {
            $pageStart = 1;
        }
        // make sure page start is
        if ($pageStart + $pageCount > $query->max_num_pages) {
            $pageCount = $query->max_num_pages - $pageStart;
        }
    ?>

    <div id="pagination">
        <?php
        if ($paged != 1) {
        ?>

        <a href="<?php echo get_pagenum_link(1); ?>" class="numbered page-number-first"><span>&lsaquo;&lsaquo; <?php _e('Previous Page', 'rhinoplasty'); ?></span></a>

        <?php
        }
        if ($pageStart > 1) {
            //echo 'previous';
        }
        for ($p = $pageStart; $p <= $pageStart + $pageCount; $p ++) {
            if ($p == $paged) {
        ?>

        <span class="numbered page-number-<?php echo $p; ?> current-numeric-page"><?php echo $p; ?></span>

        <?php } else { ?>

        <a href="<?php echo get_pagenum_link($p); ?>" class="numbered page-number-<?php echo $p; ?>"><span><?php echo $p; ?></span></a>

        <?php
            }
        }
        if ($pageStart + $pageCount < $query->max_num_pages) {
            //echo "last";
        }
        if ($paged != $query->max_num_pages) {
        ?>

        <a href="<?php echo get_pagenum_link($query->max_num_pages); ?>" class="numbered page-number-last"><span><?php _e('Next Page', 'rhinoplasty'); ?> &rsaquo;&rsaquo;</span></a>
        <?php } ?>
        <?php if(!$_GET['viewall']){ ?>
        <a href="<?php  echo add_query_arg( array( 'viewall' => "true" ), get_pagenum_link(1) ); ?>">View All</a>
        <?php } ?>
    </div>

    <?php
     }
    if (isset($_GET['viewall']))
    {
        function view_allposts( $query ) {
            $query->set( 'posts_per_page', -1 );
        }
        add_action( 'pre_get_posts', 'view_allposts' );
    }

1 个答案:

答案 0 :(得分:1)

尝试将代码中的行更改为:

<a href="<?php echo get_pagenum_link($paged+1); ?>" class="numbered page-number-last"><span><?php _e('Next Page', 'rhinoplasty'); ?> &rsaquo;&rsaquo;</span></a>
相关问题