get_the_post_navigation() WordPress Function
The get_the_post_navigation() function is used to display a set of navigation links for a post. These links can be used to navigate between posts in a category or tag.
get_the_post_navigation( array $args = array() ) #
Retrieves the navigation to next/previous post, when applicable.
Parameters
- $args
(array)(Optional)Default post navigation arguments.
- 'prev_text'
(string) Anchor text to display in the previous post link. Default '%title'. - 'next_text'
(string) Anchor text to display in the next post link. Default '%title'. - 'in_same_term'
(bool) Whether link should be in a same taxonomy term. Default false. - 'excluded_terms'
(int[]|string) Array or comma-separated list of excluded term IDs. - 'taxonomy'
(string) Taxonomy, if$in_same_term
is true. Default 'category'. - 'screen_reader_text'
(string) Screen reader text for the nav element. Default 'Post navigation'. - 'aria_label'
(string) ARIA label text for the nav element. Default 'Posts'. - 'class'
(string) Custom class for the nav element. Default 'post-navigation'.
Default value: array()
- 'prev_text'
Return
(string) Markup for post links.
Source
File: wp-includes/link-template.php
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; }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
5.5.0 | Added the class parameter. |
5.3.0 | Added the aria_label parameter. |
4.4.0 | Introduced the in_same_term , excluded_terms , and taxonomy arguments. |
4.1.0 | Introduced. |