菜单

接口文档

本文最后更新于37天前,请注意内容是否还可用

API 地址模式:https://example.com/zb_system/api.php?mod=<模块名>[&act=<行为名>][&其他...]

  • 对于各「API 模块」的act=post请求,其请求参数为$GLOBALS['datainfo']中与该模块对应的数据字段定义;

    • 参数字段名区分大小写;

    • 不需要提供全部字段值,比如「发布状态」「类型(文章/页面)」「置顶」等项目可以使用默认,而时间相关的字段则会初始为当前时间;

    • CommentUpload外,act=post请求时ID 字段为必须指定,为 0 时新建,不为 0 且项目存在时则修改;

    • 注:可在「zb_system/defend/datainfo.php」文件中搜索查看$GLOBALS['datainfo'];

  • 各接口返回信息以实际为准,可参考「通用返回格式」。

  • 对于「登录」操作以外的POST请求,一律需要设置鉴权;「登录和鉴权」

    • GET请求时仅在部分「功能模块」中的部分「只读操作」可以不设置鉴权,此外未鉴权请求频率或查询数量可能受限制;

以下将按「功能模块」进行详细说明。

member 会员登录及管理 API

act 方法请求方式参数鉴权
loginPOST用户登录并返回 token


$_POST['username'] 用户名称(非别名)


$_POST['password']password建议使用 MD5(明文密码) 值


$_POST['savedate'] token过期时间,最长 365 天


返回值:附:「示例 1」




postPOST编辑用户或新建用户必须


Member定义字段;附:「示例 2」




getGET / POST获取一个用户信息必须


$_REQUEST['id'] 用户 id




deleteGET / POST删除一个用户必须


$_REQUEST['id'] 用户 id




listGET / POST获取用户管理列表必须


act=list方法共通参数见:约束与过滤


$_REQUEST['status'] 指定状态status


$_REQUEST['level'] 指定用户level


$_REQUEST['page'] 第几页'page'




get_authGET / POST查看当前用户权限列表必须




logoutGET / POST退出登录必须


PS:然后客户端自行删除 token 即可




示例 1:

login 登录成功后返回值:(点击展开)
//发送的POST字段如下
username = '用户名'
password = md5('密码明文')
savedate = '保存天数'
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "user": {
            "ID": "1",
            "Level": "1",
            "Status": "0",
            "Name": "admin",
            "StaticName": "admin" // 等等 members 相关信息
        },
        "token": "Token 信息",
        "expire_time": 1672560322 // 过期时间
    },
    "error": null,
    "runtime": {
    }
}

此处login操作返回的「鉴权 Token」将用于后续需要「鉴权」的请求,见「权限认证」;

示例 2:

post 创建一个用户:(点击展开)
{
  "ID": "0",
  "Level": "4",
  "Name": "用户名",
  "Password": "zblog_pwdd",
  "PasswordRe": "zblog_pwdd"
}

"ID": "0", 必须显示设置;

"Level": "4", 为用户等级;参考「用户等级划定」

post 文章管理 API

act 方法请求方式参数鉴权
getGET / POST获取文章非公开文章需鉴权


参数 id:文章 ID


参数 with_relations:追加的关联对象例:mod=post&act=get&id=2&with_relations=Author 同时输出 Author 对象


1.7.2 新增参数 viewnums:同时刷新浏览计数例:mod=post&act=get&id=2&viewnums=1




postPOST新建或编辑文章必须


Post表单字段定义 附:「示例 1」




deleteGET / POST删除文章必须


$_REQUEST['id'] 文章 id




listGET / POST获取文章列表未鉴权请求数量受限为
每页面展示数量


$_REQUEST 参数定义如下


cate_idtag_idauth_idtypedatemanagesearch已鉴权有后台管理权限为
后台每页面展示数量






act=list方法共通参数见:约束与过滤


参数 with_relations:追加的关联对象例:mod=post&act=get&id=2&with_relations=Author 同时输出 Author 对象


1.7.2.3045 增加 参数 with_subcate:可以在分类列表输出子分类的文章例:mod=post&act=list&cate_id=2&with_subcate=1




示例 1:

post 新建或发布文章的$_POST参数示范:(点击展开)
$_POST['ID'] 为 0 是新建
$_POST['Title']
$_POST['Alias']
$_POST['Type'] 为 0 是文章,1 是 page 页面
$_POST['AuthorID']
$_POST['CateID'] 如果没有提供 CateID,可提供 CateName
$_POST['Intro']
$_POST['Content'] 
$_POST['Tag']
$_POST['PostTime']
$_POST['Status'] 状态

注:对于发布文章,额外提供一个CateName字段可用来代替CateID指定分类,前提是存在以该字段值命名的分类;也可以使用category模块内的接口实现自动创建分类等操作;

app 应用管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 type 和 id 的应用需鉴权


type 为 theme 或 plugin


id 为应用的 id 值




get_appsGET / POST获取所有的应用列表(含未激活的)需鉴权




get_themesGET / POST获取所有的主题列表(含未激活的)需鉴权




get_pluginsGET / POST获取所有的插件列表(含未激活的)需鉴权




set_themePOST激活指定主题需鉴权


$_POST['id] id 为主题的 id 值


$_POST['style] style 为主题的 style 名




enable_pluginPOST启用指定插件需鉴权


$_POST['id] id 为插件的 id 值




disable_pluginPOST禁用指定插件需鉴权


$_POST['id] id 为插件的 id 值




category 分类管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 id 的分类无需鉴权


id 为分类的 id 值
postPOST编辑或发布分类需鉴权
deleteGET / POST删除分类需鉴权
listGET / POST列出分类&manage=1(管理模式)需鉴权




comment 评论管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 id 的评论无需鉴权


参数 id: 为评论的 id 值
postPOST发布评论需鉴权


POST 参数:附:「示例 1」
deleteGET / POST删除评论需鉴权


参数 id: 为评论的 id 值
listGET / POST列出评论管理模式需鉴权


参数 manage:进入管理模式例:&manage=1
checkGET / POST审核评论需鉴权


参数 id: 为评论的 id 值


参数 ischecking: 审核状态例:&ischecking=1,审核中
batchPOST批量处理评论需鉴权


参数 all_del``all_pass``all_audit表示全部删除,通过,审核中例:&all_pass=1


参数 $_POST['id']:要批量处理的评论的 ID 表单数组




示例 1:

post 发布评论的$_POST参数示范:(点击展开)
$_POST['LogID'] 评论对应的文章ID
$_POST['Name'] 评论者名字
$_POST['ReplyID'] 回复评论的ID
$_POST['Email'] 评论者电邮
$_POST['HomePage'] 评论者网站
$_POST['Content'] 评论正文

module 模块与侧栏管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 id 的模块无需鉴权


id 为模块的 id 值
postPOST编辑或新建模块需鉴权


POST 参数:附:「示例 1」
deleteGET / POST删除模块需鉴权


id 为模块的 id 值
listGET / POST列出模块无需鉴权
set_sidebarPOST设置侧栏需鉴权
list_sidebarGET / POST列出指定的侧栏需鉴权


id 为侧栏的 id 值(1-9)




示例 1:

post 新建或编辑模块的$_POST参数示范:(点击展开)
$_POST['ID'] 为 0 是新建
$_POST['FileName'] 模块的唯一标识符,起名需符合文件名规则
$_POST['HtmlID'] 模块的HTML的id
$_POST['MaxLi'] 模块内li标签最大数量
$_POST['IsHideTitle'] 是否隐藏模块的标题
$_POST['Type'] 模块的类别,为div或ul
$_POST['Content'] 模块的内容
$_POST['NoRefresh'] 锁定模块的内容不让程序更

system 系统设置与管理 API

act 方法请求方式参数鉴权
basic_infoGET / POST获取网站基本信息不需要


PS:如果发送鉴权则会多返回系统语言包数组




get_infoGET / POST获取网站高级信息需鉴权




misc_statisticGET / POST清空缓存并重新编译模板需鉴权


PS:即后台的刷新缓存操作




misc_showtagsGET / POSTMisc获取常用tags需鉴权


参数type = 0,即获取文章的常用 tags




get_settingGET / POST获取常用设置数组需鉴权


返回值:返回常用的 option 数组




save_settingPOST保存系统常用设置需鉴权


附:「示例 1」




示例 1:

get_setting 和 save_setting 可以返回或设置的 option 值:(点击展开)
$GLOBALS['setting_keys'] = array(
    'ZC_BLOG_NAME',
    'ZC_BLOG_SUBNAME',
    'ZC_BLOG_COPYRIGHT',
    'ZC_TIME_ZONE_NAME',
    'ZC_BLOG_LANGUAGEPACK',
    'ZC_API_ENABLE',
    'ZC_XMLRPC_ENABLE',
    'ZC_DEBUG_MODE',
    'ZC_DEBUG_MODE_WARNING',
    'ZC_ADDITIONAL_SECURITY',
    'ZC_USING_CDN_GUESTIP_TYPE',
    'ZC_CLOSE_SITE',
    'ZC_DISPLAY_COUNT',
    'ZC_DISPLAY_SUBCATEGORYS',
    'ZC_PAGEBAR_COUNT',
    'ZC_SEARCH_COUNT',
    'ZC_SYNTAXHIGHLIGHTER_ENABLE',
    'ZC_COMMENT_TURNOFF',
    'ZC_COMMENT_AUDIT',
    'ZC_COMMENT_REVERSE_ORDER',
    'ZC_COMMENTS_DISPLAY_COUNT',
    'ZC_COMMENT_VERIFY_ENABLE',
    'ZC_UPLOAD_FILETYPE',
    'ZC_UPLOAD_FILESIZE',
    'ZC_ARTICLE_INTRO_WITH_TEXT',
    'ZC_ARTICLE_THUMB_SWITCH',
    'ZC_ARTICLE_THUMB_TYPE',
    'ZC_ARTICLE_THUMB_WIDTH',
    'ZC_ARTICLE_THUMB_HEIGHT',
    'ZC_MANAGE_COUNT',
    'ZC_POST_BATCH_DELETE',
    'ZC_DELMEMBER_WITH_ALLDATA',
    'ZC_CATEGORY_MANAGE_LEGACY_DISPLAY',
);

tag 标签管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 id 的标签无需鉴权


参数 id: 为附件的 id 值
postPOST编辑或发布标签需鉴权


POST 参数:附:「示例 1」
deleteGET / POST删除标签需鉴权


参数 id: 为附件的 id 值
listGET / POST列出标签管理模式需鉴权


参数 manage:进入管理模式例:&manage=1




示例 1:

post 新建或编辑标签的$_POST参数示范:(点击展开)
$_POST['ID'] 为 0 是新建
$_POST['Alias'] 标签的别名 
$_POST['Intro'] 标签的简介
$_POST['Template'] 标签的模板,默认为空

upload 附件管理 API

act 方法请求方式参数鉴权
getGET / POST获取指定 id 的附件需鉴权


参数 id: 为附件的 id 值
postPOST编辑或发布附件需鉴权


附:「示例 1」
deleteGET / POST删除附件需鉴权


参数 id: 为附件的 id 值
listGET / POST列出附件需鉴权


参数 manage:进入管理模式例:&manage=1


参数 author_id:列出用户 ID 为 author_id 下的附件


参数 post_id:列出 post_id 文章下的附件

示例 1:

post 提交新的附件:(点击展开)

客户端或小程序 POST 提交上传文件到 mod=upload&act=post

提交成功后 json($upload) 对象 例如:

{"code":200,"message":"操作成功","data":
{"upload":{"ID":118,"AuthorID":"1","Size":100676,
"Name":"tmp_14af3ac3791ceeb34e0755ccc3586ce2.jpg",
"SourceName":"tmp_14af3ac3791ceeb34e0755ccc3586ce2.jpg",
"MimeType":"image/jpeg","PostTime":1648973749,
"DownNums":0,"LogID":0,"Intro":"","Url":"xxxxxxxxxxxxxxx"}
},"error":null,
"runtime":{"time":"54.25","query":14,"memory":4035,"debug":0,"loggedin":1,"error":0}
}

提交失败后返回 false

有用吗?

评论(1)

剑影飞鸿
剑影飞鸿

2025-10-10 10:38:22

详细介绍了Zblog系统的API接口及其使用方法。

发表评论

技术支持 在线客服
返回顶部