为REST创建自定义终结点时出现问题

时间:2017-08-05 作者:PSo

我在创建自定义端点以扩展Wordpress应用程序时遇到问题。

设置WordPress模块后,我可以通过以下链接访问son数据:

http://localhost/wordpress/wp-json/

我使用链接测试了文档中的不同端点:

https://developer.wordpress.org/rest-api/reference/

现在我正在尝试创建自己的端点,但经过多次研究,我只能找到类似

add_action( \'rest_api_init\', \'myplugin_register_routes\' );
然后

function myplugin_register_routes() {
  register_rest_route( \'myplugin/v1\', \'foo\', array(
    \'methods\'  => WP_REST_Server::READABLE,
     \'callback\' => \'myplugin_serve_route\',
  ));
}


function myplugin_serve_route( WP_REST_Request $request ) {
    // Do something with the $request
    // Return either a WP_REST_Response or WP_Error object
    return $response;
}
但实际上,我应该在哪里添加这些东西呢?另外,我研究了很多,看到了高级端点控制器的实践,有人可以帮我一下吗?或者我需要创建自己的插件?

1 个回复
最合适的回答,由SO网友:Johansson 整理而成

编写自定义端点一点也不难。代码转到主题functions.php 文件或插件。注册REST路由后,可以通过以下URL访问它:

www.example。com/wp-json/myplugin/v1/foo

我猜你失踪了\\ 在回调函数的参数中\\WP_REST_Request $request.

结束

相关推荐

Php致命错误:无法将WP_REST_RESPONSE类型的对象用作wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php中

我向WordPress添加了一个自定义端点,如下所示: add_action( \'rest_api_init\', function () { register_rest_route( \'menc/v1\', \'/crosscat/(?P[\\w-]+)/(?P[\\w-]+)\', array( \'methods\' => \'GET\', \'callback\' => \'dept_cat_api\',&#x