Я хотел бы создать собственные маршруты на своем веб-сайте Wp, используя два параметра запроса, например: http://www.mywebsite.com/apin/?code=CODE&f=getInfo
или http://www.mywebsite.com/apin/?code=CODE&f=getCategories
Я создал собственный плагин с помощью следующих методов:
add_action( 'rest_api_init', 'getMovieInfo' );
function getMovieInfo() {
register_rest_route( 'apin', '/?token=(?P<token>[a-f0-9]+)&f=getInfoApp', array(
'methods' => 'GET',
'callback' => 'get_movie_info',
)
);
}
function get_movie_info($datas) {
$posts = get_posts(array(
'post_type' => 'movies'));
foreach($posts as $post) {
$fields = get_fields($post->ID);
$code = $fields['movie_code'];
if ($code === $datas['movie_code']) {
$data=[];
$data['movie_title'] = $post->post_title;
$data['movie_description'] = $fields['movie_description'];
$data['movie_categories'] = $fields['movie_categories'];
$data['movie_image'] = $fields['movie_image']['url'];
return $data;
} else {
return "No matching results";
}
}
}
Однако я не знаю, как правильно использовать пространство имен и как создавать разные методы для разных параметров запроса (мне нужно извлечь конкретный фильм, используя его код, и вернуть разные результаты его поля в соответствии с '& f =METHOD ', например' getInfo 'или' getCategories ')