WordPressのRest APIで記事をランダムに取得する場合、functions.phpに追加設定が必要。
// Rest APIでorderbyを有効にする
function custom_api__random( $params ) {
$params['orderby']['enum'][] = 'rand';
return $params;
}
add_filter( 'rest_post_collection_params', 'custom_api__random', 10, 1 );
WordPress標準の投稿機能ではなく、例えばカスタム投稿「news」の記事をランダムに取得したい場合には、「rest_news_collection_params」と指定する。
ランダムに記事を1件取得したい場合は、以下のようにアクセスすること。
/wp-json/wp/v2/posts?orderby=rand&per_page=1