什么是WordPress REST API?
WordPress REST API 是 WordPress 提供的一套基于 HTTP 協(xié)議的接口,允許開發(fā)者通過標(biāo)準(zhǔn)的 RESTful 方式與 WordPress 站點(diǎn)進(jìn)行交互。無論是獲取文章、創(chuàng)建頁面,還是管理用戶數(shù)據(jù),都可以通過發(fā)送 HTTP 請求(如 GET、POST、PUT、DELETE)來實(shí)現(xiàn)。
核心功能與用途
- 數(shù)據(jù)獲取與操作
- 通過
/wp-json/wp/v2/posts
獲取文章列表 - 使用
/wp-json/wp/v2/users
管理用戶信息 - 支持自定義文章類型(CPT)和分類法
- 跨平臺整合
- 可用于構(gòu)建移動應(yīng)用(React Native、Flutter)
- 與前端框架(如 Vue.js、React)無縫對接
- 自動化與擴(kuò)展
- 結(jié)合 Webhook 實(shí)現(xiàn)自動化流程(如發(fā)布觸發(fā)通知)
- 與第三方服務(wù)(CRM、電商系統(tǒng))集成
基礎(chǔ)使用示例
獲取文章列表(GET請求)
curl https://your-site.com/wp-json/wp/v2/posts
返回 JSON 格式數(shù)據(jù),包含標(biāo)題、內(nèi)容、作者等信息。
創(chuàng)建新文章(POST請求)
需認(rèn)證后操作,示例代碼(使用 JavaScript Fetch API):
fetch('/wp-json/wp/v2/posts', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
},
body: JSON.stringify({
title: '新文章標(biāo)題',
content: '文章內(nèi)容',
status: 'publish'
})
});
認(rèn)證與權(quán)限控制
WordPress REST API 支持多種認(rèn)證方式:
- Cookie 認(rèn)證:適用于已登錄的 WordPress 用戶
- OAuth 1.0a:需安裝插件(如 Application Passwords)
- JWT:通過插件實(shí)現(xiàn)更靈活的令牌機(jī)制
自定義端點(diǎn)開發(fā)
通過 register_rest_route()
函數(shù)擴(kuò)展 API:
add_action('rest_api_init', function () {
register_rest_route('custom/v1', '/hello', [
'methods' => 'GET',
'callback' => function () {
return ['message' => 'Hello, REST API!'];
}
]);
});
訪問 /wp-json/custom/v1/hello
即可獲取自定義響應(yīng)。
官方文檔與資源
掌握 WordPress REST API 能顯著提升開發(fā)效率,尤其適合構(gòu)建無頭 CMS(Headless WordPress)或跨平臺應(yīng)用。建議從基礎(chǔ)請求開始,逐步探索高級功能如過濾、分頁和 Webhook 集成。