昨年末にリリースされた WordPress 4.7 でようやく REST-API(WP-API)がWordPress 本体にマージされました。
そして昨日、Matt Mullenweg さんによって以下のような記事が Make WordPress Core に投稿されました。
投稿された内容を要約すると以下の通りです。
- wp-admin 内で現在まで使用されていた古い方法 admin-ajax.php を全て REST-API ベースに置き換える。
- エディターはよりリッチなコンテンツを投稿しやすくするように改善し、ショートコードやカスタムHTML、oEmbed などのブロック要素を見つけやすいものにする。(過去の記事を参照)
- カスタマイザーはエディターを補う存在から、できればテーマ全体のブロックをカスタマイズできるようにシフトしていく。
- それぞれのプロジェクトにはテクニカルリードとデザインリードを任命していく。
それぞれのプロジェクトにはすでにリードが任命されていますが、個人的にうれしかったのは以前にこのブログでも紹介したことがある K.Adam White さんが REST-API チームのリードになったことです。
彼はボストンの制作会社に勤務するフロントエンドエンジニアなので、会社の業務とどのようにバランスをとっていくかについても今後興味深く見守っていきたいと思っています。
コメント欄では様々な意見が述べられていて、そのうちのいくつかはとても興味深いものですが、バックボーンとなる情報を書かないと上手く伝わらない内容も多いので、以下では私個人の意見として解説していきます。
筆者の個人的な予測と見解
開発ツールやワークフローに対する影響
WordPress では、平成生まれがもう 30歳目前という現在においてもなお Subversion を使用しています。
これは、WordPress コミュニティによって開発された様々なサードパーティーツールによって、たとえばコマンドの引数にパッチの URL を渡すとそのパッチのテストが即座にできるなど、独自のワークフローが構築されているためです。
実際、コアコミッターの一連のワークフローはとてもスムーズで、初めて見たときは驚きました。
一方でこのワークフローは、後方互換性を重視するWordPressにとっては特に大掛かりなコアの変更を困難にしています。
そのため今回スタートするプロジェクトは単体のプラグインとして GitHub 上で開発が行われていくのではないかと予想されます。
Feature Plugin に対する影響
新年一発目の記事で紹介しましたが、WordPress では、将来コアに実装するかもしれない新機能を単体のプラグインのプロジェクトとして進めています。
この中のたとえば Shortcake などのプロジェックトは、今回のプロジェクトとかなり密接な連携が必要となることが予想されます。
どうなるにせよ、これらの新機能の多くは REST-API ベースになると思われますが、その際にそれ専用の API のエンドポイントを作るのか?コアの API のエンドポイントを拡充するのか?は大きな議論になりそうなところです。
既存のテーマやプラグインへの影響
もし次のバージョンで、REST-API ベースのダッシュボードが実装されるならめちゃくちゃ混乱するでしょう。笑
しかし実際には今回のプロジェクトの対象がエディターとカスタマイザーというふうに限定されており、その上でさらに段階的に移行していくものと考えられます。
将来コアに実装される Fields API が普及すれば、管理画面が PHP であろうと JavaScript であろうとどうにかなる気がしますので、Fields API への期待度が劇的にあがるのではないかとワクワクしています。
残念ながら一般のユーザーにはわかりにくい部分なのであまり日本では情報が出ない気もしますが、テーマやプラグイン開発者は要チェックです。
WordPress は後方互換性を守ることを厳守しており、この方針のもとにどのように着地点を探していくかについても注目する必要がありますね。
管理画面とフロントの分離に期待
これは WordPress に限ったことではありませんが、全ての CMS は、ウェブサイトとその管理画面、データベースが一枚岩で構成されており、これはインストールを簡単にするという恩恵をもたらす一方で、ウェブサイトが成長した時に様々な問題を引き起こしてきました。
REST-API ベースの投稿画面やカスタマイザーは、これらを従来の WordPress の管理画面から分離することを想定することもそれほど難しくありません。
サードパーティの管理画面もたくさん出るかもしれませんね。
フロントエンドエディターが来るかも
コメント欄でディスカッションされていますが、フロントエンドエディターが実装されるかもしれません。
まだこれは議論の段階であり、過去にも同じアイディアが最終的にボツになったことがあるので、まったくわかりませんが、議論が再浮上することは間違いないと思われます。
コメントを残す