Wp rest API重命名默认的wp-json uri部件容易吗?

时间:2016-11-30 作者:violacase

WP-restapi公开了大量信息,因此我过滤了不需要公开的端点。

我无法过滤所有内容:例如,所需媒体文件的位置是公开的。

作为额外的保护,我想对默认uri进行神秘化。

我想更改例如:http://example.com/wp-json/wp/v2/http://example.com/mistified/wp/v2/

这很容易吗?

2 个回复
SO网友:rorymorris89

请注意,对于当前版本的WordPress,使用json_url_prefix 过滤器不再工作。

在WordPress 4.7上(使用核心的REST API而不是插件),这就是我需要更改API前缀的地方。

add_filter( \'rest_url_prefix\', \'my_theme_api_slug\'); 
function my_theme_api_slug( $slug ) { return \'api\'; }
如果这不能立即起作用,则需要刷新重写规则。您可以运行这段代码一次来执行此操作(不要将其留在代码中,这样它每次都会运行):

flush_rewrite_rules(true);

SO网友:Dan.

您可以使用json_url_prefix 要移除的挂钩\'wp-json\' 跨越所有API路由。下面的示例将完成您问题中的示例:

add_filter( \'json_url_prefix\', \'my_theme_api_slug\'); 
function my_theme_api_slug( $slug ) { 
    return \'mistified\';
}