The get_previous_post() WordPress PHP function retrieves the previous post that is adjacent to the current post.
Usage
$previous_post = get_previous_post($in_same_term, $excluded_terms, $taxonomy);
Parameters
$in_same_term(bool) Optional: Whether the 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’
More information
See WordPress Developer Resources: get_previous_post()
Examples
Display previous post title
This example displays the title of the previous post.
$prev_post = get_previous_post();
if (!empty($prev_post)) {
echo $prev_post->post_title;
}
Display previous post link
This example displays the link to the previous post.
$prev_post = get_previous_post();
if (!empty($prev_post)) {
echo '<a href="' . get_permalink($prev_post->ID) . '">' . $prev_post->post_title . '</a>';
}
Display previous post in the same category
This example displays the previous post only if it is in the same category as the current post.
$prev_post = get_previous_post(true);
if (!empty($prev_post)) {
echo $prev_post->post_title;
}
Display previous post excluding certain categories
This example displays the previous post while excluding posts from categories with IDs 3 and 5.
$prev_post = get_previous_post(false, '3,5');
if (!empty($prev_post)) {
echo $prev_post->post_title;
}
Display previous post in a custom taxonomy
This example displays the previous post in the same custom taxonomy term, using the taxonomy ‘my_custom_taxonomy’.
$prev_post = get_previous_post(true, '', 'my_custom_taxonomy');
if (!empty($prev_post)) {
echo $prev_post->post_title;
}