The get_next_post WordPress PHP function retrieves the next post that is adjacent to the current post.
Usage
get_next_post($in_same_term, $excluded_terms, $taxonomy);
Parameters
$in_same_term(bool) Optional: Whether post should be in the same taxonomy term. Default: false$excluded_terms(int|string) Optional: Array or comma-separated list of excluded term IDs. Default: ”$taxonomy(string) Optional: Taxonomy, if$in_same_termis true. Default ‘category’. Default: ‘category’
More information
See WordPress Developer Resources: get_next_post
Examples
Basic usage of get_next_post
Display the title of the next post.
$next_post = get_next_post();
if ( is_a( $next_post , 'WP_Post' ) ) {
  echo '<a href="' . get_permalink( $next_post->ID ) . '">' . get_the_title( $next_post->ID ) . '</a>';
}
Get next post in the same tag
Display a link to the next post in the same tag.
$next_post = get_next_post(true, '', 'post_tag');
if ( is_a( $next_post , 'WP_Post' ) ) {
  echo '<a href="' . get_permalink( $next_post->ID ) . '">Back</a>';
}
Exclude specific categories
Exclude categories with IDs 5 and 15 when getting the next post.
$next_post = get_next_post(false, '5,15');
if ( is_a( $next_post , 'WP_Post' ) ) {
  echo '<a href="' . get_permalink( $next_post->ID ) . '">' . get_the_title( $next_post->ID ) . '</a>';
}
Get next post in a custom taxonomy
Display the next post in the same custom taxonomy term, where the taxonomy is ‘genre’.
$next_post = get_next_post(true, '', 'genre');
if ( is_a( $next_post , 'WP_Post' ) ) {
  echo '<a href="' . get_permalink( $next_post->ID ) . '">' . get_the_title( $next_post->ID ) . '</a>';
}
Check if there’s a next post before displaying the link
Only display the link to the next post if there’s one available.
$next_post = get_next_post();
if ( is_a( $next_post , 'WP_Post' ) ) {
  echo '<a href="' . get_permalink( $next_post->ID ) . '">' . get_the_title( $next_post->ID ) . '</a>';
} else {
  echo "There are no more posts.";
}