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