возможно ли получить данные / тип сообщения из API WordPress Rest с помощью URL в качестве параметра?
Я знал эту функцию уже из Soundcloud.Существует функция разрешения с параметром url (см. https://developers.soundcloud.com/docs/api/reference#resolve). Когда вы вызываете эту конечную точку API rest, вы получите подробную информацию, если URL является, например, дорожкой или списком воспроизведения.
К сожалению, я не смогя не могу найти функцию в документации WordPress Rest API для этого. То, что я точно хочу, это получить данные / тип сообщения, только зная url
С такой функцией https://demo.wp -api.org / wp-json / wp / v2 /resol? url = https://demo.wp -api.org / 2017/05/23 / hello-world /
Есть ли способ сделать это? Или мне нужно написать свою собственную конечную точку api rest apiс плагином WordPress?
это решило проблему
function route_handler($request) { global $wp; global $wp_query; $parameters = $request->get_json_params(); $url = $parameters["url"]; $_SERVER['REQUEST_URI'] = $url; $wp->parse_request(); $wp->query_posts(); //Insert queries for more specific information //Modify or simplify the query results //Here I'm just returning the query results. return json_encode($wp_query); } add_action('rest_api_init', function () { register_rest_route('custom-theme/v1', '/route', array( 'methods' => 'POST', 'callback' => 'route_handler', )); });
см .: https://medium.com/@harryhorton/query-wp-rest-api-using-any-permalink-url-f5e4e4dd36b7
Вы можете просто получить все сообщения https://demo.wp -api.org / wp-json / wp / v2 / posts , а затем сделать что-то вроде:
$.each(data, function(index, post){ if(post.link == yourUrl){ //yourcode } });
Если вы не хотите писать свою конечную точку