【问题标题】:wordpress pagination doesn't work on "previous page"wordpress 分页在“上一页”上不起作用
【发布时间】:2015-12-31 18:32:53
【问题描述】:

我真的被 wordpress 的分页问题困扰了一个多星期。 问题:在第一个博客页面上(基本上当你点击导航菜单“博客”时)有一个分页 - 这是源 http://advokat-belyakova.ru/blog/ 分页是指下一个和上一个按钮。 但是当我点击帖子分页下方的“以前的帖子”(“«К предыдущим записям”)时。分页消失 (http://advokat-belyakova.ru/blog/page/2/)

我正在使用简单的 wp_query

<?php   $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
        $temp = $wp_query;$wp_query= null;
        $wp_query = new WP_Query(); $wp_query->query('showposts=20' . '&paged='. $paged . '&cat=-41');
        while ($wp_query->have_posts()) : $wp_query->the_post(); ?>

我也试过没有(我在stackoverflow中找到了这个$paged,但它根本没有帮助我:(

 $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

这是我通过 wp_query 循环获得的信息后的代码

<?php endwhile; ?>
        <div class="row">
            <div class="col-md-12">
                <?php if ($paged > 1) { ?>

                    <nav id="nav-posts">
                        <div class="prev"><p class="pagination"><?php next_posts_link('&laquo; К предыдущим записям'); ?></p></div>
                        <div class="next"><p class="pagination pagination-next"><?php previous_posts_link('К новым записям &raquo;'); ?></p></div>
                    </nav>

                <?php } else { ?>

                    <nav id="nav-posts">
                        <div class="prev"><?php next_posts_link('&laquo; К предыдущим записям'); ?></div>
                    </nav>

                <?php } ?>

            </div>
        </div>
        <?php wp_reset_postdata(); ?>

我很抱歉在我的网站示例中使用俄语。我希望这已经足够了,您将能够理解我的问题所在。

我有静态主页模板(自定义),但过去我真的没有遇到过这个问题。如果需要其他信息,请询问

【问题讨论】:

    标签: php wordpress pagination


    【解决方案1】:

    找到适合我的情况的功能

    函数如下:

    // Numbered Pagination
    if ( !function_exists( 'wpex_pagination' ) ) {
    
    function wpex_pagination() {
    
        $prev_arrow = is_rtl() ? '&rarr;' : '&larr;';
        $next_arrow = is_rtl() ? '&larr;' : '&rarr;';
    
        global $wp_query;
        $total = $wp_query->max_num_pages;
        $big = 999999999; // need an unlikely integer
        if( $total > 1 )  {
            if( !$current_page = get_query_var('paged') )
                $current_page = 1;
            if( get_option('permalink_structure') ) {
                $format = 'page/%#%/';
            } else {
                $format = '&paged=%#%';
            }
            echo paginate_links(array(
                'base'          => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
                'format'        => $format,
                'current'       => max( 1, get_query_var('paged') ),
                'total'         => $total,
                'mid_size'      => 3,
                'type'          => 'list',
                'prev_text'     => $prev_arrow,
                'next_text'     => $next_arrow,
            ) );
        }
    }
    
    }
    

    blog-page.php中的wp_query(其实差不多):

    <?php 
            $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
            $temp = $wp_query;$wp_query= null;
            $wp_query = new WP_Query(); $wp_query->query('showposts=7' . '&paged='. $paged . '&cat=-41');
            while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
    

    在循环内获取内容后:

    <?php endwhile; ?>
            <div class="row">
                <div class="col-md-12 pagination-wrapper">
                    <?php wpex_pagination(); ?>
    
    
                </div>
            </div>
            <?php wp_reset_postdata(); ?>
    

    显示分页的一些基本css

    ul.page-numbers {
    list-style: none;
    margin: 0;
    }
    
    .page-numbers:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
    }
    
    ul.page-numbers li {
    display: block;
    float: left;
    margin: 0 4px 4px 0;
    text-align: center;
    }
    
    .page-numbers a,
    .page-numbers span {
    line-height: 1.6em;
    display: block;
    padding: 0 6px;
    height: 18px;
    line-height: 18px;
    font-size: 12px;
    text-decoration: none;
    font-weight: 400;
    cursor: pointer;
    border: 1px solid #ddd;
    color: #888;
    }
    
    .page-numbers a span { padding: 0 }
    
    .page-numbers a:hover,
    .page-numbers.current,
    .page-numbers.current:hover {
    color: #000;
    background: #f7f7f7;
    text-decoration: none;
    }
    
    .page-numbers:hover { text-decoration: none }
    

    别忘了对这个人说声谢谢。 http://www.wpexplorer.com/pagination-wordpress-theme/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-23
      • 2015-03-20
      • 1970-01-01
      • 2016-10-09
      • 2014-01-25
      相关资源
      最近更新 更多