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するとここの値が書き換えられるということですね。