# REST API 手册
WordPress REST API为WordPress数据类型提供API端点,允许开发人员通过发送和接收JSON(JavaScript对象符号)对象远程与站点进行交互。 JSON是一种开放标准的数据格式,它是轻量级和可读的,看起来像是在JavaScript中的对象; 由此得名。 当您向API发送内容或发出请求时,将以JSON返回响应。 这使开发人员能够从客户端JavaScript或外部应用程序创建,阅读和更新WordPress内容,甚至是用PHP语言编写的内容。
寻找WordPress中可用的其他API的列表? 您可以在这里找到文档。
# 如何使用WordPress REST API
WordPress REST API使以前更容易使用WordPress新的和令人兴奋的方式,如在WordPress之上创建单页应用程序。您可以创建一个插件,为WordPress提供全新的管理体验,或创建全新的互动前端体验。
您甚至不必在PHP中编写应用程序:可以使HTTP请求和解释JSON的任何编程语言都可以通过REST API从Node.js到Java以及其他方面与WordPress进行交互。
WordPress REST API也可以作为核心中的admin-ajax API的强大替代品。通过使用REST API,您可以更轻松地构建要将数据导入和移出WordPress的方式。通过使用REST API可以大大简化AJAX调用,使您能够花更少的时间访问所需的数据,更多的时间创建更好的用户体验。
我们的想象力是WordPress REST API可以做到的唯一限制。底线是,如果您希望使用结构化,可扩展和简单的方式通过HTTP获取和传出WordPress中的数据,则可能需要使用REST API。对于所有的简单性,REST API首先可以感觉到相当复杂,我们将尝试将其分解成较小的组件,以便我们可以轻松地整理拼图。
## 关键概念
要开始使用WordPress REST API,我们将分解与API相关联的一些关键概念和术语:
- Routes/Endpoints
- Requests
- Responses
- Schema
- Controller Classes
这些概念中的每一个在使用和理解WordPress REST API方面起关键作用。 让我们简单地将它们分解下来,以便我们能够更深入地探索每一个。
## Routes & Endpoints
在WordPress REST API的上下文中,路由是可以映射到不同HTTP方法的URI。单个HTTP方法映射到路由被称为“端点”。要澄清:如果我们向http://oursite.com/wp-json/发出GET请求,我们将获得一个JSON响应,显示我们可用的路由,并在每个路由中提供哪些端点。 / wp-json /是一个路由本身,当GET请求被创建时,它与显示所谓的WordPress REST API的索引的端点相匹配。我们将在以下部分中学习如何注册自己的路由和端点。
## Requests
WordPress REST API基础架构中的主要类之一是WP_REST_Request。此类用于存储和检索当前请求的信息;请求可以通过HTTP远程提交,但也可以通过WordPress从PHP内部进行。当您向注册的路由发出HTTP请求时,WP_REST_Request对象将自动生成。请求中指定的数据将确定您从API中返回的响应。使用请求类可以做很多整齐的事情。请求部分将进一步详细介绍。
## Responses
响应是从API获取的数据。 WP_REST_Response提供了一种与端点返回的响应数据交互的方法。响应可以返回所需的数据,也可以用于返回错误。
## 模式
每个端点都要求并提供稍微不同的数据结构,这些结构在API模式中定义。 模式结构API数据,并提供了API可以返回的所有属性以及可以接受的输入参数的综合列表。 模式还为API提供安全性好处,因为它使我们能够验证对API所做的请求。 模式部分进一步探讨了这个大题目。
##控制器类
您可以看到,WordPress REST API有很多移动部分,所有这些都需要一起工作。 控制器类将所有这些元素放在一起。 使用控制器类,您可以管理路由和端点的注册,处理请求,使用模式和生成API响应。
- 简介
- 主题开发
- WordPress许可证
- 什么是主题
- 开发环境
- 主题开发示例
- 主题基础
- 模板文件
- 主样式表(style.css)
- 文章类型
- 规划主题文件
- 模板层级
- 模板标签
- 循环
- 主题函数
- 连接主题文件和目录
- 使用CSS和JavaScript
- 条件标签
- 类别,标签和自定义分类
- 模板文件
- 内容模板文件
- 页面模板文件
- 附件模板文件
- 自定义内容类型
- 部分和其他模板文件
- 评论模板
- 分类模板
- 404页面
- 主题功能
- 核心支持的功能
- 管理菜单
- 自定义Headers
- 自定义Logo
- 文章格式
- 置顶文章
- Sidebars
- Widgets
- 导航菜单
- 分页
- 媒体
- Audio
- Images
- Galleries
- Video
- 精选图片和缩略图
- 国际化
- 本地化
- 辅助功能
- 主题选项 – 自定义API
- 定制对象
- 改进用户体验的工具
- 定制JavaScript API
- JavaScript / Underscore.js渲染的自定义控件
- 高级用法
- 主题安全
- 数据消毒/逃避
- 数据验证
- 使用随机数
- 常见漏洞
- 高级主题
- 子主题
- UI最佳实践
- JavaScript最佳做法
- 主题单元测试
- 验证你的主题
- Plugin API Hooks
- 发布你的主题
- 所需的主题文件
- 测试
- 主题评论指南
- 写文档
- 提交你的主题到WordPress.org
- 参考文献
- 模板标签列表
- 条件标签列表
- 编码标准
- HTML编码标准
- CSS编码标准
- JavaScript编码标准
- PHP编码标准
- 插件开发
- 插件开发简介
- 什么是插件
- 插件基础
- 头部要求
- 包括软件许可证
- 启用 / 停用 Hooks
- 卸载方法
- 最佳做法
- 插件安全
- 检查用户功能
- 数据验证
- 保护输入
- 保护输出
- 随机数
- Hooks
- Actions
- Filters
- 自定义Hooks
- 高级主题
- 管理菜单
- 顶级菜单
- 子菜单
- 短代码
- 基本短码
- 封闭短码
- 带参数的短代码
- TinyMCE增强型短码
- 设置
- 设置API
- 使用设置API
- 选项API
- 自定义设置页面
- 元数据
- 管理帖子元数据
- 自定义元数据
- 渲染元数据
- 自定义文章类型
- 注册自定义文章类型
- 使用自定义文章类型
- 分类
- 使用自定义分类
- 在WP 4.2+中使用“split术语”
- 用户
- 创建和管理用户
- 使用用户元数据
- 角色和功能
- HTTP API
- JavaScript
- jQuery
- Ajax
- 服务器端PHP和入队
- Heartbeat API
- 概要
- 计划任务
- 了解WP-Cron计划
- 安排WP-Cron 事件
- 将WP-Cron挂接到系统任务计划程序中
- WP-Cron简单测试
- 国际化
- 本地化
- 如何国际化您的插件
- 国际化安全
- WordPress.org
- 详细插件指南
- 规划您的插件
- 如何使用Subversion
- 插件开发者常见问题
- 开发工具
- Debug Bar 和附加组件
- 辅助插件
- REST API手册
- 资源
- 文章
- 文章修订
- 文章类型
- 文章状态
- 类别
- 标签
- 页面
- 评论
- 分类
- 媒体
- 用户
- 设置
- 使用REST API
- 全局参数
- 分页
- 链接和嵌入
- 发现
- 认证
- 经常问的问题
- 骨干JavaScript客户端
- 客户端库
- 扩展REST API
- 添加自定义端点
- 自定义内容类型
- 修改回应
- 模式
- 词汇表
- 路由和端点
- 控制器类