以前和以前的一组帖子链接

时间:2014-12-09 作者:Aksel Gümüş

我似乎无法显示以前和以前的帖子链接集。This 是我正在处理的页面。我需要一个链接,以旧的和新的帖子在页面底部。

模板代码如下所示:

<?php /*
Template Name: artikkelit
*/ ?>

<?php get_header(); ?>

<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">

<?php $the_query = new WP_Query( \'showposts=5\' ); ?>

<?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>

<h3><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<div class="postPic"> <?php the_post_thumbnail(); ?></div>

<?php the_excerpt(); ?>

<?php endwhile;?>

</main><!-- #main -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
对解决这个问题有什么建议吗?

1 个回复
SO网友:Pieter Goosen

另一个问题完全错误,不应使用

  • previous_post()next_post() 都是折旧功能,不应再使用

    切勿更换WP_Query 具有query_posts 解决问题。这实际上创造了更多。而且query_posts 应该never 被使用

  • showposts 也被贬值为posts_per_page

    要使分页工作正常,您需要执行以下操作

    设置paged 查询参数中的参数(paged=$paged)

    $paged = (get_query_var(\'paged\')) ?get_query_var(\'paged\') : 1;
    
  • 使用previous_posts_link()next_posts_link() 为您的帖子分页

    设置$max_num_pages 的参数next_posts_link() 以便在使用自定义查询时正确计算页数

    您的查询应该是这样的。(摘自法典)

    <?php
    // set the "paged" parameter (use \'page\' if the query is on a static front page)
    $paged = ( get_query_var( \'paged\' ) ) ? get_query_var( \'paged\' ) : 1;
    
    // the query
    $the_query = new WP_Query( \'posts_per_page=5&paged=\' . $paged ); 
    ?>
    
    <?php if ( $the_query->have_posts() ) : ?>
    
    <?php
    // the loop
    while ( $the_query->have_posts() ) : $the_query->the_post(); 
    ?>
    <?php the_title(); ?>
    <?php endwhile; ?>
    
    <?php
    
    // next_posts_link() usage with max_num_pages
    next_posts_link( \'Older Entries\', $the_query->max_num_pages );
    previous_posts_link( \'Newer Entries\' );
    ?>
    
    <?php 
    // clean up after the query and pagination
    wp_reset_postdata(); 
    ?>
    
    <?php else:  ?>
    <p><?php _e( \'Sorry, no posts matched your criteria.\' ); ?></p>
    <?php endif; ?>
    

结束