WordPress.com新旧账号REST API无法访问,如何启用该功能?
如何在WordPress.com启用并访问REST API
你碰到的问题其实是因为WordPress.com托管站点和自托管WordPress(比如你在DigitalOcean部署的实例)的REST API访问逻辑完全不同。虽然自托管版从v4.7开始默认启用/wp-json端点,但WordPress.com的托管服务有自己的API规则,不能直接套用自托管的访问方式。
下面是具体的解决方法:
使用WordPress.com专属的API端点
WordPress.com的REST API并不使用{name}.wordpress.com/wp-json这种路径,而是统一通过官方的公共API端点访问。正确的格式是:https://public-api.wordpress.com/rest/v1.1/sites/{你的站点域名}比如你的测试站点,正确的访问地址应该是:
https://public-api.wordpress.com/rest/v1.1/sites/steventsaotest.wordpress.com访问这个地址就能得到预期的JSON响应了。
涉及敏感操作需要认证令牌
如果你的需求不只是读取公开内容,还要修改文章、调整站点设置这类操作,必须先获取OAuth2访问令牌:- 登录WordPress.com后,进入「我的站点」→「工具」→「开发者」→「API控制台」
- 创建一个新的应用,获取客户端ID和密钥
- 生成带有对应权限的访问令牌,在API请求的
Authorization头中传递这个令牌(格式为Bearer {你的令牌})
检查站点的可见性设置
如果你的站点被设置为「私有」,即使是读取类的API请求也会被拒绝。可以在「设置」→「阅读」里确认站点可见性:如果需要保持私有,必须用认证令牌才能访问API;如果允许公开访问,调整为「对所有人可见」即可。
补充说明一下:你提到的tribunemedia.com这类站点是自托管WordPress,它们遵循标准的WordPress REST API规则,所以/wp-json端点有效,但WordPress.com作为托管服务,提供的是一套独立的API体系,这就是两者的核心区别。
内容的提问来源于stack exchange,提问作者Steven Tsao
相关产品推荐
相关产品推荐

