WordPress Rest

ちょっと遅れ気味ですが、Wordpress Restのお話です。

https://ja.wp-api.org/
https://wordpress.org/plugins/rest-api/

MovableTypeもそうだったようにWordperssもそうなりました。先日SOAPクライアントを使いましたがSOAPと大差ないというか、ほんとにAPIそのものです。
Wordpressが生まれ変わっちゃいました。

投稿を取得する

WordPressに指定のURIでアクセスすると投稿の内容がjsonで取得できるというわけです。

http://example.com/wp-json/wp/v2/posts/

以下にアクセスするとそのままjsonが取得ができます。Wordpressの(開発でよく使う)投稿のIDを指定すれば簡単に取得できます。
APIなので実にAPI的な取得の方法です。エンコードされた状態で返ってくるのでアプリケーション側でいろいろ処理しないといけませんが。

例えばこの記事をAPIで取得する場合は、
https://saba.omnioo.com/note/wp-json/wp/v2/posts/1015
こういったアクセス方法になります。投稿IDを指定してあげればいいというだけです。

カスタム投稿タイプを取得する

ではカスタム投稿タイプはどうなるんだろうかというと、カスタム投稿タイプのAPIはデフォルトでアクセスできなくなっているのでカスタム投稿タイプ登録部分(functions.php)で許可指定する必要があります。

....
register_post_type(
    'CUSTOM_POSTTYPE_NAME',
    'show_in_rest' => true,
    'rest_base' => 'BASE_NAME',
]);

rest_baseは省略可能で省略するとそのままカスタム投稿タイプ名になります。

http://example.com/wp-json/wp/v2/BASE_NAME

うーんいい感じ。取得自体はとても簡単にできちゃいます。

Last update: 2018.07.12 (木)