首页 > 解决方案 > 如何在 Wordpress REST API 中创建新的 rest url 前缀?

问题描述

我想在我的网站中有两个 url 前缀来访问两个不同的 api 基本路径,特别是:

我需要保留wp-jsonurl 前缀我需要创建一个名为 的新前缀api,这样我就可以在那里创建新的路由和端点。我找到了这个方法

add_filter( 'rest_url_prefix', 'rest_url_prefix' );

function rest_url_prefix( ) {
  return 'api';
}

但它也隐藏了wp-json,虽然我需要创建一个新的 url 前缀,与它不同但同时工作。我怎样才能实现它?谢谢

标签: phpwordpresswordpress-rest-api

解决方案


根据您的描述,我相信您想开发两种不同的 API。您可以在不更改前缀的情况下执行此操作。实际上,此过滤器通过您的自定义前缀更改 wp-json,该前缀是 API 端点的基本 URL。

您可以为两个不同的 API 创建两个不同的端点,而不是更改前缀。

  1. 如果您有一个创建帖子的 API,您可以使用

add_action( 'rest_api_init', function () { register_rest_route( 'yourprefix1/v1', '/create/', array( 'methods' => 'GET', // You can use 'POST' as well 'callback' => 'create_post', )); });

这个 URL 是http://example.com/wp-json/yourprefix1/v1/create/

  1. 另一个创建用户的 API 可能有类似的端点

    add_action( 'rest_api_init', function () { register_rest_route( 'yourprefix2/v1', '/create/user/', array( 'methods' => 'GET', // You can use 'POST' as well 'callback' => 'create_user', )); });

此 URL 为http://example.com/wp-json/yourprefix2/v1/create/user/

希望这可以帮助你!


推荐阅读