0

我在页面模板中有一个看起来像这样的代码(显然首先我设置了类别的 ID):

<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;         
global $post; 
$myposts = get_posts("cat=$catIDs&posts_per_page=12&paged=" . $paged);
?>
<div class="column-odd">
    <?php
        $i=1;
        foreach($myposts as $post) :
            if($i%2 != 0) :
                setup_postdata($post);
                //output odd post
            endif;
            $i++;
        endforeach;
    ?>
</div>
<div class="column-even">
    <?php
        $i=1;
        foreach($myposts as $post) :
            if($i%2 == 0) :
                setup_postdata($post);
                //output even post
            endif;
            $i++;
        endforeach;
    ?>
</div>

<nav>
    <ul>
        <?php
         if($link = get_previous_posts_link("« Poprzednia strona")) 
                echo '<li class="prev">'.$link.'</li>';
         if($link = get_next_posts_link("Następna strona »")) 
                echo '<li class="next">'.$link.'</li>';

        ?>
    </ul>
</nav>

问题是get_next_posts_link没有返回任何东西。我怎样才能让它工作?

4

2 回答 2

4

它不适用于 get_posts。您需要使用query_posts。我认为它应该适用于相同的论点。编辑:您还需要将其保存为 $myposts = query_posts( ... ),因为您正在使用两个这样的 foreach 循环。

于 2013-04-30T21:15:09.670 回答
0

您只需添加以下行:

<?php query_posts('post_type=post&paged='. get_query_var('paged')); ?>

就在您的 get_posts() 循环开始之前。

全文在这里:http ://blog.onireon.it/wordpress-get_posts-and-pagination-posts-are-correctly-displayed-but-no-pagination-links-are-showing/

于 2014-07-15T14:57:52.740 回答