多数的博客系统都是使用WordPress搭建的,而作为博客系统,可能我们需要在站外调用博客的文章,请求这个API接口,可以获取最新文章列表,一般通常的做法是新建一个PHP文件,接收几个参数,查询数据库,用JSON格式返回数据就行了。

WordPress的插件是非常强大的,几乎能完成我们需要的所有工作,有一款插件叫JSON API,就能将WordPress做API接口,在站外调用博客的文章列表。

一款叫JSON API的WordPress插件正是我要的功能,并且更全面,它可以返回最新文章,类别,作者,文章详情,就是在WordPress中几乎所有的内容都可以通过它来获取JSON格式的数据,它甚至可以通过传递json数据实现文章评论、用户注册。

有了这样一款插件,关键是有了这样一个API接口,可以不用费劲自己写API了,但是可以用来做什么呢?

比如我想做个微信公共帐号,用户输入1,返回最新文章列表,根据用户输入返回不同的内容,这就要请求API地址返回JSON格式的数据。

插件安装地址:http://wordpress.org/plugins/json-api/

安装好后,使用方法如下(本文只介绍几个常见的,其他的请参考插件说明文档):
隐式调用

http://www.example.org/?json=1(返回该站全部json格式数据)
http://www.example.org/?p=47&json=1(返回文章id为47的json数据)
http://www.example.org/tag/banana/?json=1(返回标签是banana的json数据)

显示调用

http://www.example.org/?json=get_recent_posts(返回最新文章json数据,默认返回很多字段,可以指定)
http://www.example.org/?json=get_post&post_id=47(返回id为47的文章json数据)
http://www.example.org/?json=get_tag_posts&tag_slug=banana(返回tag标签是banana的json数据)

链接友好型调用

http://www.example.org/api/get_recent_posts/
http://www.example.org/api/get_post/?post_id=47
http://www.example.org/api/get_tag_posts/?tag_slug=banana

当在外部需要获取一个wordpress中的JSON数据时,可以使用它提供的JSON API来很方便的获取

http://www.uedsc.com/wordpress-plugs-json-api.html 一个简要说明使用方法的中文网页

https://wordpress.org/plugins/json-api/other_notes/ 英文的官方说明文档

一些使用的方式:

http://www.example.org/?json=1 等号后只要不为0,且没有其他的选项是,他就是返回全部(最近)的文章

*这里的全部文章和最近文章是否意思一致,还未明白。之后实验,目前的方法是将count属性设为一个很大的值,使其每页能显示全部文章,但终究不是一个好的办法

http://www.example.org/?json=1&…. 这个&是用来加一些条件判断或进行筛选的,如

http://www.example.org/?json=1&p=2015&include=title,url 意为:从所有文章中返回一个文章ID为2015的,返回内容包括title,url

http://www.example.org/?json=get_category_index 获取wordpress的文章分类信息

http://www.example.org/?json=get_category_posts&category_id=xxx 获取ID为XX的类下的所有文章

http://www.example.org/?json=get_search_result&s=xxx 返回搜索关键词XXX的结果

还有一些其他的命令,看官方文档会比较清晰

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。