Wordpress如何搭建一个API环境?


想利用WP做后台,做一个Hybird应用。我没做过HybirdApp,想利用JqueryMobile+Phonegap或Appcan来完成

刚装了一个名为JSON API的插件,的确可以导出JSON数据,不过好像还是有些问题的,例如复杂的Tags Post就没有数据,刚度娘发现说是WP4.0后,就已经加入了JSON支持了,发现关于Wordpress JSON的插件和文章还不少,一头雾水

搭建一个Wordpress JSON api有什么正确的方法吗?

php wordpress hybrid-app

jjsok 11 years, 7 months ago

感觉题主绕了个大圈,见以下链接中的 描述目标、而不是过程
https://github.com/seajs/seajs/issues/545

按现有的目标,看不懂为什么要用WP,想要返回JSON数据(并且是支持WP的环境)直接上PHP脚本就好了

通过echo json_encode(data)即可


按题主评论更新:

谢谢回答,我主要是想叙述一下我其中遇到的问题,其实就是想问怎么样做最好,另外我用WP是因为想基于我现在站里的信息来调用~

既然使用WP的目的是基于WP站内信息进行调用,思路就比较明确:

  1. 如何导出WP站内信息(基于JSON)
  2. 如何在Hybrid APP中使用这些信息

题主现在的问题描述并不涉及Hybrid APP的问题


fan qiang 用 Google 搜索 wordpress json api

第一个结果是: https://wordpress.org/plugins/json-api/

里面有完整的JSON API安装及使用教程,

1.3. Responses
The standard response format for JSON API is (as you may have guessed) JSON.

Here is an example response from http://localhost/wordpress/?json=1 called on a default WordPress installation (formatted for readability):


 {
  "status": "ok",
  "count": 1,
  "count_total": 1,
  "pages": 1,
  "posts": [
    {
      "id": 1,
      "type": "post",
      "slug": "hello-world",
      "url": "http:\/\/localhost\/wordpress\/?p=1",
      "title": "Hello world!",
      "title_plain": "Hello world!",
      "content": "<p>Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!<\/p>\n",
      "excerpt": "Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!\n",
      "date": "2009-11-11 12:50:19",
      "modified": "2009-11-11 12:50:19",
      "categories": [],
      "tags": [],
      "author": {
        "id": 1,
        "slug": "admin",
        "name": "admin",
        "first_name": "",
        "last_name": "",
        "nickname": "",
        "url": "",
        "description": ""
      },
      "comments": [
        {
          "id": 1,
          "name": "Mr WordPress",
          "url": "http:\/\/wordpress.org\/",
          "date": "2009-11-11 12:50:19",
          "content": "<p>Hi, this is a comment.<br \/>To delete a comment, just log in and view the post's comments. There you will have the option to edit or delete them.<\/p>\n",
          "parent": 0
        }
      ],
      "comment_count": 1,
      "comment_status": "open"
    }
  ]
}

从返回数据来看,是有tags及post的,可以满足题主的需求

不撸是傻子 answered 11 years, 7 months ago

Your Answer