get_page_uri( WP_Post|object|int $page ): string|false
Builds the URI path for a page.
Contents
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
.
View all references
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 );
}
Hooks
-
apply_filters( 'get_page_uri',
string $uri ,WP_Post $page ) -
Filters the URI for a page.
Changelog
Version | Description |
---|---|
4.6.0 | The $page parameter was made optional. |
1.5.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
Example