WordPress 默认开放的一些用户接口若未经适当保护,可能会使得用户信息面临未经授权的访问风险,进而构成安全隐患。
WordPress有哪些默认的api接口?
| 1. Posts(文章) | |
| 获取所有文章 | /wp/v2/posts |
| 获取特定文章 | /wp/v2/posts/{id} |
| 创建文章(需要认证) | /wp/v2/posts |
| 更新文章(需要认证) | /wp/v2/posts/{id} |
| 删除文章(需要认证) | /wp/v2/posts/{id} |
| 2. Pages(页面) | |
| 获取所有页面 | /wp/v2/pages |
| 获取特定页面 | /wp/v2/pages/{id} |
| 创建页面(需要认证) | /wp/v2/pages |
| 更新页面(需要认证) | /wp/v2/pages/{id} |
| 删除页面(需要认证) | /wp/v2/pages/{id} |
| 3. Media(媒体) | |
| 获取所有媒体文件 | /wp/v2/media |
| 获取特定媒体文件 | /wp/v2/media/{id} |
| 上传媒体文件 | /wp/v2/media |
| 更新媒体文件 | /wp/v2/media/{id} |
| 删除媒体文件 | /wp/v2/media/{id} |
| 4. Users(用户) | |
| 获取所有用户 | /wp/v2/users |
| 获取特定用户 | /wp/v2/users/{id} |
| 创建用户(需要认证) | /wp/v2/users |
| 更新用户(需要认证) | /wp/v2/users/{id} |
| 删除用户(需要认证) | /wp/v2/users/{id} |
| 5. Comments(评论) | |
| 获取所有评论 | /wp/v2/comments |
| 获取特定评论 | /wp/v2/comments/{id} |
| 创建评论 | /wp/v2/comments |
| 更新评论(需要认证) | /wp/v2/comments/{id} |
| 删除评论(需要认证) | /wp/v2/comments/{id} |
| 6. Taxonomies(分类法) | |
| 获取所有分类法 | /wp/v2/taxonomies |
| 获取特定分类法 | /wp/v2/taxonomies/{taxonomy} |
| 7. Categories(分类) | |
| 获取所有分类 | /wp/v2/categories |
| 获取特定分类 | /wp/v2/categories/{id} |
| 创建分类(需要认证) | /wp/v2/categories |
| 更新分类(需要认证) | /wp/v2/categories/{id} |
| 删除分类(需要认证) | /wp/v2/categories/{id} |
| 8. Tags(标签) | |
| 获取所有标签 | /wp/v2/tags |
| 获取特定标签 | /wp/v2/tags/{id} |
| 创建标签(需要认证) | /wp/v2/tags |
| 更新标签(需要认证) | /wp/v2/tags/{id} |
| 删除标签(需要认证) | /wp/v2/tags/{id} |
| 9. Settings(设置) | |
| 获取站点设置(需要认证) | /wp/v2/settings |
| 更新站点设置(需要认证) | /wp/v2/settings |
如何禁用这样的接口?
在您的主题文件夹中找到functions.php文件中,在最底部加上代码,如文提供,根据需要进行测试验证。
/**用户枚举**/
add_filter('rest_endpoints', function($endpoints){
if(isset($endpoints['/wp/v2/users'])){
unset($endpoints['/wp/v2/users']);
}
if(isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])){
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
});
// 屏蔽 REST API 用户接口
add_filter('rest_endpoints', function($endpoints){
if(isset($endpoints['/wp/v2/users'])){
unset($endpoints['/wp/v2/users']);
}
if(isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])){
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
});
// 禁用wp-sitemap所有用户
add_filter( 'wp_sitemaps_add_provider', function ( $provider, $name ) {
if ( 'users' === $name ) {
return false;
}
return $provider;
}, 10, 2 );
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...



![解决 WordPress 后台仪表盘慢问题[一]](https://tool.ibian.online/wp-content/uploads/2025/02/20250221011020875401.jpg)