希望有人能对我的答案进行补充。。。。
rest API的关键部分是端点的注册和路由,它应该看起来像(取自http://v2.wp-api.org/extending/adding/)
`/**
* Grab latest post title by an author!
*
* @param array $data Options for the function.
* @return string|null Post title for the latest,
* or null if none.
*/
function my_awesome_func( $data ) {
$posts = get_posts( array(
\'author\' => $data[\'id\'],
) );`
if ( empty( $posts ) ) {
return null;
}
return $posts[0]->post_title;
}
add_action( \'rest_api_init\', function () {
register_rest_route( \'myplugin/v1\', \'/author/(?P<id>\\d+)\', array(
\'methods\' => \'GET\',
\'callback\' => \'my_awesome_func\',
) );
} );
基于此模式,您可以按照自己喜欢的方式处理API。
我建议不要使用核心RESTAPI,除非您需要普通wordpress格式的信息。wordpress rest API对于大多数非平凡API来说,做得太多也太少,最好是隔离您的逻辑。