📅  最后修改于: 2023-12-03 14:48:32.184000             🧑  作者: Mango
WordPress 是以PHP为开发语言的免费开源的内容管理系统(CMS)。它的REST API是一种用于通过Web请求与WordPress进行交互的接口。REST API是一种基于HTTP协议的API,可以使用简单的GET/POST/PUT请求来访问数据。利用WordPress REST API可以获取博客站点的评论、文章、用户等相关信息。
在使用WordPress REST API之前,需要确保你的WordPress版本>=4.7,并开启REST API插件。在博客站点的管理后台进入“设置”->“撰写” 页面,勾选“启用 XML-RPC 协议”和“启用 REST API”。
获取文章列表需要使用到REST API的GET方法。默认情况下,请求参数是空的,返回的是所有文章的摘要列表。如果要获取具体某一篇文章,需要使用文章的ID号。如下面的代码示例:
GET /wp-json/wp/v2/posts?_embed
其中_wp-json/wp/v2是API的URL路径。这条请求将返回所有文章的摘要列表。如果要获取具体某一篇文章,需要使用文章的ID号:
GET /wp-json/wp/v2/posts/18
这条请求将返回id为18的文章的详细信息。
要想获取文章的详细信息,需要在请求URL中加入_embed参数,如下所示:
GET /wp-json/wp/v2/posts/18?_embed
这条请求将返回id为18的文章的所有详细信息,包括作者、评论、分类等。下面的示例代码将演示如何通过REST API获取文章的详细信息:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://your-blog-url.com/wp-json/wp/v2/posts/18?_embed');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$result = json_decode($response, true);
print_r($result);
curl_close($ch);
?>
要想获取一篇文章的评论信息,需要在请求URL中加入comments参数,如下所示:
GET /wp-json/wp/v2/comments?post=18
这条请求将返回ID为18的文章的所有评论信息。下面的示例代码将演示如何通过REST API获取文章的评论信息:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://your-blog-url.com/wp-json/wp/v2/comments?post=18');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$result = json_decode($response, true);
print_r($result);
curl_close($ch);
?>
获取文章的分类信息,需要在请求URL中加入categories参数,如下所示:
GET /wp-json/wp/v2/categories?post=18
这条请求将返回ID为18的文章的所有分类信息。下面的示例代码将演示如何通过REST API获取文章的分类信息:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://your-blog-url.com/wp-json/wp/v2/categories?post=18');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$result = json_decode($response, true);
print_r($result);
curl_close($ch);
?>
通过WordPress REST API可以获得WordPress博客站点的所有相关信息,为WordPress开发者提供了更多的自由度。本文介绍了如何通过REST API获取文章、评论以及分类等相关信息,希望能对WordPress开发者有所帮助。