WP REST APIのエンドポイントをwp-json以外にする
WP REST APIのデフォルトエンドポイントはhttps://example.com/wp-jsonですが、変更することが可能です。 ここで紹介するコードはWordPress4.4以降であればコア実装されている関数を […]
広告ここから
広告ここまで
目次
WP REST APIのデフォルトエンドポイントはhttps://example.com/wp-jsonですが、変更することが可能です。
ここで紹介するコードはWordPress4.4以降であればコア実装されている関数を利用しているので、WP REST APIプラグインは特に必要ありません。
コード
add_filter( 'rest_url_prefix', 'another-prefix');
2つめの引数に入れた値がプレフィックスになるので、上のコードだとhttps://example.com/another-prefixになります。
使いどころ
基本的に特に変えなければ困るということはないかと思います。
勝手にwp-jsonへのリクエストが送られていてサーバー負荷辛いとか、独自のAPIエンドポイントっぽくしたい時とかに使う感じでしょうかね。
プレフィックスだけ取得したい場合
$prefix = rest_get_url_prefix(); echo $prefix;
これで現在設定されているプレフィックスを取得できます。
元コード
function rest_get_url_prefix() {
/**
* Filter the REST URL prefix.
*
* @since 4.4.0
*
* @param string $prefix URL prefix. Default 'wp-json'.
*/
return apply_filters( 'rest_url_prefix', 'wp-json' );
}
最終行にフィルターフックが設置されているので、add_filterするとここの値が書き換えられるということですね。