Retrieves the navigation to next/previous post, when applicable.
Parameters
$args
arrayoptional- Default post navigation arguments.
prev_text
stringAnchor text to display in the previous post link.
Default'%title'
.next_text
stringAnchor text to display in the next post link.
Default'%title'
.in_same_term
boolWhether link should be in the same taxonomy term.
Default false.excluded_terms
int[]|stringArray or comma-separated list of excluded term IDs.
taxonomy
stringTaxonomy, if$in_same_term
is true. Default'category'
.screen_reader_text
stringScreen reader text for the nav element.
Default ‘Post navigation’.aria_label
stringARIA label text for the nav element. Default'Posts'
.class
stringCustom class for the nav element. Default'post-navigation'
.
Default:
array()
Source
function get_the_post_navigation( $args = array() ) {
// Make sure the nav element has an aria-label attribute: fallback to the screen reader text.
if ( ! empty( $args['screen_reader_text'] ) && empty( $args['aria_label'] ) ) {
$args['aria_label'] = $args['screen_reader_text'];
}
$args = wp_parse_args(
$args,
array(
'prev_text' => '%title',
'next_text' => '%title',
'in_same_term' => false,
'excluded_terms' => '',
'taxonomy' => 'category',
'screen_reader_text' => __( 'Post navigation' ),
'aria_label' => __( 'Posts' ),
'class' => 'post-navigation',
)
);
$navigation = '';
$previous = get_previous_post_link(
'<div class="nav-previous">%link</div>',
$args['prev_text'],
$args['in_same_term'],
$args['excluded_terms'],
$args['taxonomy']
);
$next = get_next_post_link(
'<div class="nav-next">%link</div>',
$args['next_text'],
$args['in_same_term'],
$args['excluded_terms'],
$args['taxonomy']
);
// Only add markup if there's somewhere to navigate to.
if ( $previous || $next ) {
$navigation = _navigation_markup( $previous . $next, $args['class'], $args['screen_reader_text'], $args['aria_label'] );
}
return $navigation;
}
User Contributed Notes
You must log in before being able to contribute a note or feedback.