WordPress REST APIを試してみたのでメモとして記事に残します。
Headless CMSと呼ばれるようです。
環境
Windows10 Pro: 20H2
Docker Desktop 4.4.4
Wordpres: 5.9
事前にDocker DesktopのインストールとWSL2を有効化する必要がある。
手順は以下の記事参照。
手順
- docker-compose.ymlを作成 & 起動
- 動作確認 & Wordpres初期設定
- Talend API Testerで記事一覧を取得
1. docker-compose.ymlを作成 & 起動
任意のディレクトリにdocker-compose.yml
を作成する。
構成は最低限で、利用するイメージは以下。
- worepress:latest (Wordpress最新バージョン。執筆時5.9)
- mysql:5.7
version: '3.1'
services:
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wp_user
WORDPRESS_DB_PASSWORD: wp_db_pass
WORDPRESS_DB_NAME: wpdb
volumes:
- ./wordpress:/var/www/html
- ./wp-content/themes:/var/www/html/wp-content/themes
- ./wp-content/plugins:/var/www/html/wp-content/plugins
db:
image: mysql:5.7
environment:
MYSQL_DATABASE: wpdb
MYSQL_USER: wp_user
MYSQL_PASSWORD: wp_db_pass
MYSQL_RANDOM_ROOT_PASSWORD: "1"
volumes:
- ./db:/var/lib/mysql
docker-compose.yml
を配置したディレクトリに移動し、コンテナを起動する。
$ docker-compose up -d
2. 動作確認 & Wordpres初期設定
ブラウザでlocalhost:8080にアクセスし、Wordpressの初期設定画面が表示されれば成功。
初期設定を済ませたら、パーマリンクの設定を「投稿名」に変更する。
3. Talend API Testerで記事一覧を取得
Talend API Testで以下のリソースパスを指定する。メソッドはGET。
http://[ドメイン]/wp-json/wp/v2/posts
Send
ボタンを押すと記事一覧情報のレスポンスが返却される。
Request
Response
エンドポイントは公式ドキュメントがまとまっていて見やすい。
#まとめ
WordPress REST APIはわりと昔からある印象ですが、以前はプラグインをいくつか導入する必要があったりと面倒なイメージがありましたが設定が非常に簡単になっていました。
リッチな管理画面付きのAPIサーバとして利用できそうですね。
WordPress REST API + React or Angular のような構成もありな気がします。