分页链接不起作用 /page/2 - 未找到 - Wordpress

Posted

技术标签:

【中文标题】分页链接不起作用 /page/2 - 未找到 - Wordpress【英文标题】:Pagination link is not working /page/2 - NOT FOUND - Wordpress 【发布时间】:2013-09-15 16:06:40 【问题描述】:

我需要在我的博客页面中创建一个分页器,直到这很好,但是当我点击我的分页链接时,我没有找到页面,我需要知道我是否需要在面板中启用 wordpress能够访问 ?page=N

功能:

    function get_pagination($the_query) 
    global $paged;
    $total_pages = $the_query->max_num_pages;
    $big = 999999999;

    if ($total_pages > 1) 
        ob_start();

        echo paginate_links( array(
            'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
            'format' => '/page/%#%',
            'current' => $paged,
            'total' => $total_pages,
            'prev_text' => '',
            'next_text' => ''
        ));
        return ob_get_clean();
    
    return null;

我的博客代码

$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
        // echo $paged;
        $produtos = new WP_Query(array(
            'post_type'      => 'blog',
            'posts_per_page' => 1,
            'orderby'        => 'date',
            'order'          => 'asc',
            'paged'          => $paged,
            'tax_query'      => array(
                array(
                    'taxonomy' => 'categorias',
                    'field'    => 'slug',
                    'terms'    => ACTIVE
                )
            )
        ));

        while ( $produtos->have_posts() ) : $produtos->the_post();

        //CONTENT

        endwhile;

        echo get_pagination($produtos);

【问题讨论】:

很多类似的问题:wordpress.stackexchange.com/… 【参考方案1】:

转到管理仪表板然后Settings->Reading 然后设置Blog pages show at most 等于您查询posts_per_page。所以在你的查询中,如果你设置posts_per_page => 2,那么Blog pages show at most将是2

【讨论】:

最棒最简单的回答! 我知道这将是一件简单的事情,我尝试了很多修复程序,并且花了几天时间才找到问题的根源。谢谢!【参考方案2】:

这就是我发现并解决了我遇到的问题!

[...] 我需要进入 wp-admin 页面(wordpress 仪表板) 并转到设置然后阅读并在“博客页面最多显示” 字段我将值从“10”更改为“6”(我的帖子数 表示在 $wp_query->query('showposts=6&cat=1'.'&paged='.$paged);)

【讨论】:

【参考方案3】:

使用以下分页查询

if ( get_query_var('paged') )  $paged = get_query_var('paged'); 
elseif ( get_query_var('page') )  $paged = get_query_var('page'); 
else  $paged = 1; 

    $produtos = new WP_Query(array(
            'post_type'      => 'blog',
            'posts_per_page' => -1,
            'orderby'        => 'date',
            'order'          => 'asc',
            'paged'          => $paged,
            'tax_query'      => array(
                array(
                    'taxonomy' => 'categorias',
                    'field'    => 'slug',
                    'terms'    => ACTIVE
                )
            )
        ));

        while ( $produtos->have_posts() ) : $produtos->the_post();

        //CONTENT

        endwhile;

        echo get_pagination($produtos);

【讨论】:

但我的问题不在于分页创建,而在于 wordpress 不理解 /page/ 不是新页面。 @gabrielbuzzi 在自定义模板中获取帖子时出现此 wordpress 页面未找到错误,您尝试过我的代码吗?【参考方案4】:

请检查您的 .htaccess 文件。它应该包含一个重写规则以启用带有斜杠的分页。

请看: “使用漂亮的永久链接” - http://codex.wordpress.org/Using_Permalinks

【讨论】:

【参考方案5】:

转到您的 wordpress 仪表板设置然后阅读并在“博客页面最多显示”字段中,将值从“10”更改为“1” 干杯!

【讨论】:

以上是关于分页链接不起作用 /page/2 - 未找到 - Wordpress的主要内容,如果未能解决你的问题,请参考以下文章

分页功能在 WordPress 中不起作用

在Codeigniter中搜索的分页不起作用

DataTables - 排序,搜索,分页不起作用

插入分页符不起作用

引导表分页下拉菜单不起作用 - Rails

wordpress apache永久链接不起作用(404错误)