Wordpress: Check if there are previous posts before displaying link

前端 未结 4 1671
逝去的感伤
逝去的感伤 2021-01-05 01:03

I\'m using the following code to display a \'previous posts\' link on my Wordpress blog.

     
相关标签:
4条回答
  • 2021-01-05 01:21

    Just to be clear:

    Colin's answer isn't correct in my opinion. get_previous_post is not deprecated, previous_post is.

    http://codex.wordpress.org/Function_Reference/get_previous_post http://codex.wordpress.org/Function_Reference/previous_post

    For me the use of get_next_post works still fine for me.

    if(get_next_post()) {  }
    if(get_previous_post()) {  }
    
    0 讨论(0)
  • 2021-01-05 01:21

    None of the answers worked for me. I solved it this way:

    $next = get_permalink(get_adjacent_post(false,'',false)); //next post url
    $prev= get_permalink(get_adjacent_post(false,'',true)); //previous post url
    <?php if (get_the_permalink()!=$prev): ?>
        <a href='<?php echo $prev ?>'>Previous</a>
    <?php endif; ?>
    <?php if (get_the_permalink()!=$next): ?>
        <a href="<?php echo $next ?>">Next</a>
    <?php endif; ?>
    
    0 讨论(0)
  • 2021-01-05 01:32

    for people checking this in 2013, get_previous_post has been depreciated.

    http://codex.wordpress.org/Next_and_Previous_Links http://codex.wordpress.org/Function_Reference/previous_post

    I used to use this :/

    if(get_next_post()) { echo 'next'; }
    if(get_previous_post()) { echo 'last'; }
    

    But now I use this :)

    if(get_next_posts_link()) { echo 'next'; }
    if(get_previous_posts_link()) { echo 'last'; }
    
    0 讨论(0)
  • 2021-01-05 01:37

    You can try something like this

    <?php
        if($link = get_previous_posts_link()) {
            echo '<ul><li>'.$link.'</li></ul>';
    ?>
    

    get_previous_posts_link returns null (falsy value) if there isn't any previous post.

    0 讨论(0)
提交回复
热议问题