在FrontPage上,分页在某种程度上是有效的,当点击“prev”时不会更新

时间:2012-08-21 作者:user

我遵循了本页上非常简单的教程:http://wp.tutsplus.com/tutorials/wordpress-pagination-a-primer/ (向下滚动到“更好的解决方案”)-他让它看起来很简单,它的工作原理是分页链接在那里,URL在地址栏中更改,但当单击2或3时,它实际上不会更新。。

网站-chrisayreswebdev。com/besh

我知道我错过了什么,只是不知道错过了什么。有什么想法吗?谢谢

编辑:函数。php:

function paginate() {
global $wp_query; 
$total_pages = $wp_query->max_num_pages;  

if ($total_pages > 1){  

 $current_page = max(1, get_query_var(\'paged\'));  

 echo paginate_links(array(  
        \'base\' => get_pagenum_link(1) . \'%_%\',  
        \'format\' => \'page/%#%\',  
        \'current\' => $current_page,  
        \'total\' => $total_pages,
     ));  
}
}
索引。php:

        <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
                <div class="post">
                <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
                 <?php the_title(); ?></a></h1>
                <h4>Posted on <?php the_time(\'F jS, Y\') ?></h4>
                <div class="horzline"></div>
                <p><?php the_content(__(\'(more...)\')); ?></p>
                </div>
            <?php endwhile; else: ?>
            <p><?php _e("Sorry, we couldn\'t find the post you are looking for."); ?></p>

        <?php endif; ?>
        <?php paginate(); ?>  

1 个回复
SO网友:Chip Bennett

我怀疑你的问题在这里:

\'base\' => get_pagenum_link(1) . \'%_%\'
你通过了1get_pagenum_link(), 而不是实际的页码。尝试通过之前确定的$current_page 而是:

\'base\' => get_pagenum_link( $current_page ) . \'%_%\'
注意,我将此用作base:

\'base\' => @add_query_arg(\'paged\',\'%#%\')
编辑我尝试了你的建议以及\'@add_query_arg\' 这两种方法都没有实际更新下一组帖子的分页。url更改为“/besh/page/2”,但帖子不变,页码保持在1。这就好像我的代码中完全遗漏了一些东西。

我所能做的就是为您提供完整的工作代码:

/**
 * Paginate Archive Index Page Links
 */
function oenology_get_paginate_archive_page_links( $type = \'plain\', $endsize = 1, $midsize = 1 ) {
    global $wp_query, $wp_rewrite;  
    $wp_query->query_vars[\'paged\'] > 1 ? $current = $wp_query->query_vars[\'paged\'] : $current = 1;

    // Sanitize input argument values
    if ( ! in_array( $type, array( \'plain\', \'list\', \'array\' ) ) ) $type = \'plain\';
    $endsize = (int) $endsize;
    $midsize = (int) $midsize;

    // Setup argument array for paginate_links()
    $pagination = array(
        \'base\' => @add_query_arg(\'paged\',\'%#%\'),
        \'format\' => \'\',
        \'total\' => $wp_query->max_num_pages,
        \'current\' => $current,
        \'show_all\' => false,
        \'end_size\' => $endsize,
        \'mid_size\' => $midsize,
        \'type\' => $type,
        \'prev_text\' => \'&lt;&lt;\',
        \'next_text\' => \'&gt;&gt;\'
    );

    if( $wp_rewrite->using_permalinks() )
        $pagination[\'base\'] = user_trailingslashit( trailingslashit( remove_query_arg( \'s\', get_pagenum_link( 1 ) ) ) . \'page/%#%/\', \'paged\' );

    if( !empty($wp_query->query_vars[\'s\']) )
        $pagination[\'add_args\'] = array( \'s\' => get_query_var( \'s\' ) );

    return paginate_links( $pagination );
}

结束

相关推荐

Pagination for sub-pages

我有一个顶级页面,有很多子页面当用户访问顶级页面时,他们当前会看到标题/缩略图/摘录all 子页面的如何分页子页面的显示,以便only 每次显示3,使用户可以通过典型的“上一页1、2、3、4、5下一页>”分页菜单进行导航?任何帮助都将不胜感激。谢谢