get_page_uri( WP_Post|object|int $page )
Build the URI path for a page.
Description
Sub pages will be in the "directory" under the parent page post name.
Parameters
Return
(string|false) Page URI, false on error.
More Information
If the page has parents, those are prepended to the URI to provide a full path. For example, a third level page might return a URI like this:
top-level-page/sub-page/current-page
This function will return a “slug” style URI regardless of whether “pretty” Permalinks are configured.
Source
File: wp-includes/post.php
function get_page_uri( $page = 0 ) { if ( ! $page instanceof WP_Post ) { $page = get_post( $page ); } if ( ! $page ) { return false; } $uri = $page->post_name; foreach ( $page->ancestors as $parent ) { $parent = get_post( $parent ); if ( $parent && $parent->post_name ) { $uri = $parent->post_name . '/' . $uri; } } /** * Filters the URI for a page. * * @since 4.4.0 * * @param string $uri Page URI. * @param WP_Post $page Page object. */ return apply_filters( 'get_page_uri', $uri, $page ); }
Changelog
Version | Description |
---|---|
4.6.0 | The $page parameter was made optional. |
1.5.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/get_page_uri