如何通过WordPress REST API按用户名获取用户?返回空数组问题排查
WordPress REST API 查询用户返回空数组的排查方案
权限与认证限制
WordPress默认对未认证的REST API请求做了限制:未登录状态下仅能获取开启了「允许任何人查看我的个人资料」的用户数据。如果你的请求未携带认证信息,要么检查目标用户的个人资料设置,要么通过Basic Auth、JWT等方式添加认证后再发起请求。search参数的匹配逻辑问题
search参数是模糊匹配用户的用户名、邮箱、昵称或显示名称的部分内容,并非精确匹配。如果需要精准定位指定用户名的用户,建议改用slug参数(用户slug默认与用户名一致),端点调整为:https://my-website.com/wp-json/wp/v2/users?slug=my-username用户可见性设置未开启
登录WordPress后台,进入目标用户的个人资料页面,确认是否勾选了「允许任何人查看我的个人资料」选项。未勾选时,未认证请求无法获取该用户的公开数据。插件或主题冲突
部分安全插件(如Wordfence)或自定义主题可能会修改REST API的用户访问权限。可以临时禁用所有插件、切换到默认主题(如Twenty Twenty-Four)后重新测试,排查是否存在权限拦截的情况。直接通过用户ID请求
如果已知目标用户的ID,可直接使用ID端点获取数据,规避参数匹配问题:https://my-website.com/wp-json/wp/v2/users/{用户ID}
内容的提问来源于stack exchange,提问作者smh_lotfizadeh
相关产品推荐
相关产品推荐

