Skip to content

選單 API

選單 API 讓您能夠檢索和同步 WNCMS 中的導覽選單結構。

端點總覽

方法端點說明
GET/POST/api/v1/menus列出所有選單(佔位符)
POST/api/v1/menus/store建立/更新選單(佔位符)
POST/api/v1/menus/sync同步網站的選單項目
GET/POST/api/v1/menus/{id}透過 ID 取得單一選單

列出選單

開發中

此端點目前為佔位符,返回空集合。

端點

GET|POST /api/v1/menus

回應範例

json
{
  "code": 200,
  "status": "success",
  "message": "Successfully fetched menus",
  "data": []
}

同步選單

同步特定網站的選單項目。這是僅限管理員的操作,允許批次更新選單結構。

端點

POST /api/v1/menus/sync

身份驗證

  • 必需:是
  • 權限:需要管理員角色
  • 方法:透過 api_token 進行簡易身份驗證

請求參數

參數類型必需說明
api_tokenstring管理員使用者 API token
website_idinteger是*網站 ID
domainstring是*網站網域
menu_itemsarray選單項目物件陣列

*必須提供 website_iddomain

選單項目物件

menu_items 陣列中的每個選單項目應該有:

欄位類型必需說明
orderinteger顯示順序/位置
namestring選單項目顯示名稱
typestring選單類型(例如「page」、「link」)
page_idinteger頁面 ID(如果類型為「page」則必需)
urlstring自定義 URL(用於連結類型)
targetstring連結目標(_self、_blank)
iconstring圖示識別符
parent_idinteger父選單項目 ID,用於巢狀選單

請求範例

bash
curl -X POST "https://your-domain.com/api/v1/menus/sync" \
  -H "Content-Type: application/json" \
  -d '{
    "api_token": "admin-api-token-here",
    "website_id": 1,
    "menu_items": [
      {
        "order": 1,
        "name": "Home",
        "type": "page",
        "page_id": 1
      },
      {
        "order": 2,
        "name": "About",
        "type": "page",
        "page_id": 2
      },
      {
        "order": 3,
        "name": "Blog",
        "type": "link",
        "url": "/blog"
      }
    ]
  }'

相關端點

疑難排解

有關常見問題和解決方案,請參閱疑難排解指南

用 ❤️ 製作,獻給 WNCMS