基本的WordPress循环 - 分页?

时间:2014-04-07 20:47:46

标签: php wordpress

所以我错过了什么?因为如果我执行以下操作 - 在single.php,而数据库包含4个帖子:

if(have_posts()){
    while(have_posts()){
        the_post();
        // post content here
    }

    var_dump(get_next_posts_link('asdasdsad')); die();
}

我得到了空。这似乎真的错了。这只是你的基本旧循环.....数据库中有4个其他帖子...所以我失败了什么?我知道这个函数必须在循环中使用。

帮助?

2 个答案:

答案 0 :(得分:0)

您的功能未在循环内调用。

试试这个:

   <?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( 'cat=1&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

// get_next_posts_link() usage with max_num_pages
echo get_next_posts_link( 'Older Entries', $the_query->max_num_pages );
echo get_previous_posts_link( 'Newer Entries' );
?>

<?php 
// clean up after our query
wp_reset_postdata(); 
?>

<?php else:  ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>

答案 1 :(得分:0)

正确的方法是按照我的方式做,但在if语句中我需要分别使用next_post_linkprevious_post_link。因为这些让我在下一篇和上一篇文章之间移动。