显示分页的条件陈述

时间:2014-04-18 16:20:50

标签: php wordpress if-statement pagination

我使用wordpress在我的网站中使用分页,在同一类别的帖子之间导航。 这是我的代码:

<div class="article_single_prev_next">
<div class="article_prev"><?php next_post_link('%link', 'Article Précédent', TRUE); ?>
</div>
<div class="article_next"><?php previous_post_link('%link', 'Article Suivant', TRUE);?>
</div>
</div>

效果很好。

但我想要做的是添加一个if语句,以显示div&#34; article_single_prev_next&#34;,只有在该类别中有下一个上一页时才会显示。

我尝试使用此代码但未成功:

<?php if (show_posts_nav('%link')) : ?>
<div class="article_single_prev_next">
<div class="article_prev"><?php next_post_link('%link', 'Article Précédent', TRUE); ?>
</div>
<div class="article_next"><?php previous_post_link('%link', 'Article Suivant', TRUE);?>
</div>
</div>

2 个答案:

答案 0 :(得分:0)

在wordpress中,您可以使用get_adjacent_post,它会为您提供下一个帖子数据,它需要三个参数:$in_same_cat, $excluded_categories, and $previous

if(get_adjacent_post(true, '', false)){
/* do what you want  */
}

或者,如果您使用wp loop,可以通过

进行检查
global $wp_query;
if($wp_query->current_post + 1 < $wp_query->post_count){
/* do what you want  */
}

For more...

答案 1 :(得分:0)

感谢您的帮助,我找到了另一种解决方案,工作正常:

<?php
$next_post_link = get_next_post_link( '%link', 'Article Précédent', TRUE );
$previous_post_link = get_previous_post_link( '%link', 'Article Suivant', TRUE );
if ( $next_post_link || $previous_post_link ) : ?>
    <div class="article_single_prev_next">
        <div class="article_prev">
            <?php echo $next_post_link; ?>
        </div>
        <div class="article_next">
            <?php echo $previous_post_link; ?>
        </div>
    </div>
<?php endif; ?>