さまざまな経緯を経て、先日リリースされたWordPress 4.7でようやく WP-API が WordPress 本体にマージされました。
ただし、現時点では事前にβ版としてリリースされていた WP-APIプラグイン からいくつかの主要な機能がマージされずに残っています。
たとえば ?filter[name]=the-slug
のようなフィルター機能がマージされていません。
Filters dont work after the last update
そんな状況の中、WordPress 4.7 のリリースとほぼ同時期に WP-API チームの主要メンバーのひとりの K.Adam White さんによって、node-wpapi という WP-API クライアントがリリースされました。
https://github.com/WP-API/node-wpapi
I am very excited to announce v1.0 of node-wpapi https://t.co/P0KH6Wwl6A, an isomorphic JavaScript client for the new WordPress REST API!
— K. Adam White (@kadamwhite) December 6, 2016
この node-wpapi では、以下のようにメソッドチェーンや Promise などを使って WordPress の API にアクセスすることが可能です。
var WPAPI = require( 'wpapi' ); var wp = new WPAPI({ endpoint: 'http://exmaple.com/wp-json' }); // Promises wp.posts().then(function( data ) { // do something with the returned posts }).catch(function( err ) { // handle error });
筆者はまだ試していませんが、Promise風の記述ができることや Auto-Discovery など使い勝手がよさそうに設計されており、React や Riot などとも非常に相性が良さそうに感じました。
日本国内においては WP-API のユースケースがまだ十分にあるとは言いがたい状況ですが、WP-API とこれらのサードパーティーツールの誕生によって WordPress の活躍の場が今後ますます広がることを期待していきたいと思っています。