什么是WordPress REST API?
WordPress REST API 是 WordPress 提供的一套基于 HTTP 协议的接口,允许开发者通过发送 HTTP 请求(如 GET、POST、PUT、DELETE)与 WordPress 站点进行交互。它采用 JSON 格式传输数据,使得 WordPress 可以与其他应用、移动端或前端框架(如 React、Vue.js)无缝集成。
为什么使用 WordPress REST API?
- 前后端分离:开发者可以使用 REST API 构建单页应用(SPA),提升用户体验。
- 跨平台兼容:支持移动应用、第三方服务与 WordPress 数据交互。
- 灵活性:可自定义端点,扩展 WordPress 功能。
基础使用教程
1. 启用 REST API
WordPress 4.7+ 版本默认启用 REST API,无需额外安装插件。如需调试,可使用工具如 Postman 或浏览器开发者工具。
2. 常用 REST API 端点
- 获取文章:
GET /wp-json/wp/v2/posts
- 创建文章:
POST /wp-json/wp/v2/posts
(需认证) - 获取用户:
GET /wp-json/wp/v2/users
- 更新文章:
PUT /wp-json/wp/v2/posts/{id}
3. 发送请求示例
获取最新10篇文章(JavaScript Fetch API):
fetch('https://你的网站/wp-json/wp/v2/posts?per_page=10')
.then(response => response.json())
.then(posts => console.log(posts));
创建文章(需认证):
curl -X POST https://你的网站/wp-json/wp/v2/posts \
-H "Authorization: Bearer 你的访问令牌" \
-H "Content-Type: application/json" \
-d '{"title":"新文章", "content":"内容", "status":"publish"}'
4. 认证方式
- Cookie 认证:适用于同域请求(需登录后台)。
- OAuth 2.0:推荐第三方应用使用(需安装插件如 OAuth Server)。
- JWT 认证:轻量级方案(安装 JWT Authentication 插件)。
进阶:自定义 REST API 端点
通过 register_rest_route()
函数扩展自定义 API:
add_action('rest_api_init', function () {
register_rest_route('custom/v1', '/hello', [
'methods' => 'GET',
'callback' => 'custom_hello_endpoint',
]);
});
function custom_hello_endpoint() {
return ['message' => 'Hello, REST API!'];
}
访问地址:/wp-json/custom/v1/hello
安全注意事项
- 限制敏感数据的访问权限(如用户信息)。
- 使用 HTTPS 加密通信。
- 定期更新 WordPress 及插件,避免漏洞。
总结
WordPress REST API 为开发者提供了强大的数据交互能力,无论是构建移动应用、定制前端还是集成外部服务,都能高效实现。通过本教程,你可以快速掌握基础操作并尝试扩展自定义功能。
如需更详细的文档,可参考 WordPress REST API Handbook。