get_page_uri( WP_Post|object|int $page )
Build the URI path for a page.
Description Description
Sub pages will be in the “directory” under the parent page post name.
Parameters Parameters
- $page
-
(WP_Post|object|int) (Optional) Page ID or WP_Post object. Default is global $post.
Return Return
(string|false) Page URI, false on error.
More Information 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 Source
File: wp-includes/post.php
5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 |
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 ); } |
Expand full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
4.6.0 | The $page parameter was made optional. |
1.5.0 | Introduced. |