Today, while trying to configure links between a blog’s next and previous pages, I ran into a little hiccup that seems to be one of the little features that has been forgotten by WordPress’ contributors. There is absolutely no function to return ONLY the URLs of the next and previous pages. To save anyone else time in what should be a simple thing, here it is.
To return the URL of the previous page, use the following php code:
$prev = get_permalink(get_adjacent_post(false,'',false));
To return the URL of the next page, use the following php code:
$next = get_permalink(get_adjacent_post(false,'',true));
To use them, simply echo the variables $prev and $next where you need them.
<a href="<?php echo $prev; ?>">Previous Post</a> and the
<a href="<?php echo $next; ?>">Next Post</a>
What if there isn’t a previous or next post?
Since our functions will automatically return either the adjacent post’s URL if there is one or the current post’s own URL if you’re on the first or last post. Use the following code to make it conditional whether to display the previous or next post link:
<?php $prev = get_permalink(get_adjacent_post(false,'',false)); if
($prev != get_permalink()) { ?><a href="
<?php echo $prev; ?>">Previous Post Only Displaying If Available</a><?php } ?>
There you have it — hope it saved you a headache. Enjoy!
Hi, this is excellent. What if one wanted to cycle through the posts in a specific category. In other words when you get to the last post in a category (using this process as the content in in a modal), how could I get the next post to link to the first one. Like a carousel of posts? Regardss Jan
yep me too looking for the answer of @537b184b583d289add8757186da5cd22:disqus
Thanks a lot. I searched the whole web for this code. It works for me
Glad to hear it, Richmond. I, too, searched everywhere. You would think this would be pretty common knowledge, or that WordPress would at least have defined functions for it!
Just a quick thanks, code is simple and works brilliantly!
Another thanks from me as well. Just what I wanted. Thanks to Google too, I got the result in minutes 🙂
Thank you, this is exactly what I needed!
Thank you! excellent tip.
thanks you its working
When you are designing a website must make plan what you want and what is your requirement. If you understand the client requirement clearly or planed what you do definitely you will able to create a fabulous website development. In the word-press website development is too east. thanks for give me such good ideas.
hello.. i try ur script but not working yet..
where i should place $prev = get_permalink(get_adjacent_post(false,”,false)); ?
sorry i understand now.. I already fix it.. thanks 🙂
An alternative for next posts page
function get_nex_post_link_href( $max_page = 0 ){
global $paged, $wp_query;
if ( !$max_page )
$max_page = $wp_query->max_num_pages;
if ( !$paged )
$paged = 1;
$nextpage = intval($paged) + 1;
if ( !is_single() && ( $nextpage <= $max_page ) ) {
return next_posts( $max_page, false );
}
}
Thanks very much! I was stunned to find this was not a simple function of WP…
thank you for cutting through the b.s. with a simple answer to the question I’ve been gnawing at all afternoon!