JetpackのJSONAPIプラグインでWordPressにアクセスする

access-with-jetpack_jsonapi
正確にはJetpackと言うプラグインの中のひとつの機能という位置づけですが、ちょっとおもしろそうにだったので実験。

デフォルトでONになってた気がするけど、不要ならOFFにしておいた方が良いかも。アクセスはWordpress.com経由で来るっぽいのでアクセス元を特定しにくいだろうし、取得できるデータはとても再利用しやすいから悪意があったら悪用し放題ですね。

コマンドラインからcurlでアクセスしてjqで見やすくします。
jqは取得したJSONを見やすくしてくれるツール。JSONAPIのオプションパラメータ?pretty=1を利用してもいいけど、jqなら日本語も表示されるので便利

以下はOFFの状態

snize@snize > curl 'https://public-api.wordpress.com/rest/v1/sites/bulblub.com/' | jq '.'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    79    0    79    0     0     63      0 --:--:--  0:00:01 --:--:--    63
{
  "message": "API calls to this blog have been disabled.",
  "error": "unauthorized"
}

アクセス出来ない旨をお知らせされる。

ONにしてみた

snize@snize > curl 'https://public-api.wordpress.com/rest/v1/sites/bulblub.com/' | jq '.'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   550    0   550    0     0    168      0 --:--:--  0:00:03 --:--:--   168
{
  "meta": {
    "links": {
      "comments": "https://public-api.wordpress.com/rest/v1/sites/12472795/comments/",
      "posts": "https://public-api.wordpress.com/rest/v1/sites/12472795/posts/",
      "help": "https://public-api.wordpress.com/rest/v1/sites/12472795/help",
      "self": "https://public-api.wordpress.com/rest/v1/sites/12472795"
    }
  },
  "ID": 12472795,
  "name": "bulblub",
  "description": "bulblub = bulb + love (白熱灯が好き)",
  "URL": "http://bulblub.com",
  "jetpack": true,
  "subscribers_count": 0,
  "is_private": false,
  "is_following": false
}

できました。簡単。
既にWordPressで不動産サイトとかを構築していてデータを流用しつつ構築するとかに便利そうだ。重いけど

まとめ

  • ワンクリックでWordPressをAPI化できるというのは便利
  • WordPress.comを経由する事もありかなり重い
  • 他にもいろいろできる Developer Resources

Comments