説明
get_page_uri() は、固定ページの階層を含むURIパスを返す関数です。
基本構文
get_page_uri( int|WP_Post $page ): string|false
引数
$page:ページIDまたはオブジェクト
戻り値
URIパス(例:parent/child)。
使い方(サンプル)
$uri = get_page_uri( 12 );
注意点
- 親ページを含むパスが返ります。
実務での使いどころ
- 固定ページの、階層を含む、パス(
親/子)を取得するとき。 get_page_by_path()に渡す、パスを作るとき。
よくあるミスと対処
- URLが、返ると考えている。この関数が返すのは、ドメインを含まない、階層のパス。URLには
get_permalink()を使う。 - 存在しないページでは
falseが返る。確認せずに使う。
NG例
echo '<a href="' . get_page_uri( $id ) . '">ページ</a>'; // URLではなく、パス
OK例
$path = get_page_uri( $id );
$page = $path ? get_page_by_path( $path ) : null;
echo esc_url( get_permalink( $id ) );
使い分け早見表
| やりたいこと | 使うもの |
|---|---|
| 階層を含む、パスを取得 | get_page_uri() |
| ページのURLを取得 | get_permalink() |
| パスから、ページを取得 | get_page_by_path() |
関連項目
get_page_by_path()、get_permalink()
公式リファレンス:get_page_uri() | Function | WordPress Developer Resources

コメント