【问题标题】:How to add pagination to custom page如何为自定义页面添加分页
【发布时间】:2017-02-20 06:30:44
【问题描述】:

正如您在我的代码中看到的那样,我正在使用循环。只需要显示 2 个帖子,其余的我应该可以进行分页。

<?php
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    query_posts( 
        array (
            'posts_per_page' => 2,
            'post_type' => 'post', 
            'category_name' => 'news', 
            'category' => 1,
            'paged' => $paged )
    );      
    // The Loop
    while ( have_posts() ) : the_post();?>
        <div class="news-page-content-wrapper">
            <div class="news-page-content">
                <h1><a class="read-more"href="<?php the_permalink(); ?>"><?php the_title();?></a></h1>
                <figure><?php the_post_thumbnail(); ?></figure>
                <p><?php echo get_the_excerpt();?></p>
                <a href="<?php the_permalink(); ?>">Read More&raquo</a>
            </div>
         </div>  
    <?endwhile; 
    // Reset Query
    wp_reset_query();
  ?>
  <?php next_posts_link(); ?>
  <?php previous_posts_link(); ?>

如何使用带有类别 ID 的循环进行分页?

【问题讨论】:

    标签: wordpress pagination


    【解决方案1】:
    <?php 
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    
    $data= new WP_Query(array(
        'post_type'=>'YOUR_POST_TYPE', // your post type name
        'posts_per_page' => 3, // post per page
        'paged' => $paged,
    ));
    
    if($data->have_posts()) :
        while($data->have_posts())  : $data->the_post();
                // Your code
        endwhile;
    
        $total_pages = $data->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,
                'prev_text'    => __('« prev'),
                'next_text'    => __('next »'),
            ));
        }
        ?>    
    <?php else :?>
    <h3><?php _e('404 Error&#58; Not Found', ''); ?></h3>
    <?php endif; ?>
    <?php wp_reset_postdata();?>
    

    Pagination Like : Prev 1 2 3 Next

    你能试试上面的代码吗?查看我的answer 了解更多信息。

    【讨论】:

      【解决方案2】:

      对于导航,您可以使用插件。 Click here

      并使用&lt;?php wp_pagenavi(); ?&gt; 代替

      <?php next_posts_link(); ?>
        <?php previous_posts_link(); ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多