其他人发了很多禁用方法,但是那些喊得最响,鼓吹禁用 Rest API 有多厉害有多厉害的人,又偷偷打开了这个功能。
现在流行的 WP 第三方客户端都是基于 Rest API 的,包括寿王轩家的微信APPlet、与微信微信微信官方账号的交互、手机上的独立 app 等。,这是注重操作的站长们的最爱。如果禁用,将没有食物。
至于站长,有时候需要用自己做的一些小工具来自动发文章什么的,Rest API 接口是用的最多的一个。
使用wordpress过滤器要求对 API 用户进行身份验证,可以有效防止匿名外部访问。下面的代码实现了基于 Rest API 的第三方客户端可以正常使用,但普通访客无法访问接口。
代码如下:
//设置 REST API 请求权限
add_filter('rest_authentication_errors', function($result) {
if (true === $result || is_wp_error($result)) {
return $result;
}
if (!is_user_logged_in()) {
return new WP_Error(
'rest_not_logged_in',
__('You are not currently logged in.'),
array('status' => 401)
);
}
return $result;
});
代码写到主题下 functions.php 文件内任意位置。
转载请注明:汇站网 » 设置网站 WordPress Rest API 访问权限