説明
get_rest_url() は、REST APIのURLを、サイトのIDを指定して取得する関数です。現在のサイトなら rest_url() で足ります。
基本構文
get_rest_url( int $blog_id = null, string $path = '/', string $scheme = 'rest' ): string
引数
$blog_id:サイトのID(省略すると、現在のサイト)$path:REST APIのパス$scheme:URLのスキーム
戻り値
REST APIのURL。
使い方(サンプル)
$url = get_rest_url( null, 'my-plugin/v1/items' );
注意点
- パーマリンクの設定が「基本」のときは、URLの形式が違います(
?rest_route=の形)。 - マルチサイトで、別のサイトのURLが必要なときに使います。
実務での使いどころ
- マルチサイトで、別のサイトのREST APIのURLを、取得するとき。
よくあるミスと対処
/wp-json/を、直接書いている。パーマリンク設定で、URLの形式が変わる。- 現在のサイトだけでよいのに、これを使っている。
rest_url()が簡単。
NG例
$url = home_url( '/wp-json/my-plugin/v1/items' ); // 形式を決め打ちしている
OK例
$url = get_rest_url( null, 'my-plugin/v1/items' );
使い分け早見表
| 関数 | 役割 |
|---|---|
get_rest_url() |
サイトを指定して、REST APIのURLを取得する |
rest_url() |
現在のサイトの、REST APIのURLを取得する |
register_rest_route() |
ルートを登録する |

コメント