LoginSignup
4
4

More than 3 years have passed since last update.

カスタムフィールドの情報をWordPress REST APIで取得

Posted at

カスタムフィールド作成

カスタムフィールドを作成する方法は以下の3つ

  • 既存機能を使う
  • functions.phpに書く
  • プラグインを使う

少し調べて試してみた結果、WordPress REST APIでカスタムフィールドを扱えてかつ難易度が低いものは「プラグインを使う」方法かなと思います。
というわけで今回はAdvanced Custom Fieldsというプラグインを使ってのカスタムフィールドの作り、その情報をACF to REST APIというプラグインを使いAPIで取得できるようにしていきます。

Advanced Custom Fields

デフォルトでもカスタムフィールドを作成できますが、Advanced Custom Fields(ACF)を使うと簡単にカスタムフィールドを作成することができるだけでなく、複雑な要件を満たすことも可能になるそうです。
Advanced Custom Fields

使い方

プラグインをインストールすると左メニューに「カスタムフィールド」ができます。
ここから「新規追加」をクリックします。
左メニュー

そうすると「フィールドグループ」と言うものが作成できます。
上部の「タイトルを追加」部分にフィールドグループの名前を付けましょう。
そしてその下の「フィールドを追加」ボタンをクリックしフィールドを作成します。
フィールドを追加

フィールドは色々設定がありますが、最低限「フィールドラベル」「フィールド名」「フィールドタイプ」を入力します。
フィールドを作成したら位置を設定します。これを設定することでどこでこのカスタムフィールドを表示するかを決定します。
位置

設定できたら投稿画面を見てみましょう。
作成したカスタムフィールドが表示されているはずです。

投稿

ACF to REST API

ACFで追加したカスタムフィールドはデフォルトでは取得出来ません。
(そもそもWordPress REST APIはデフォルトではカスタムフィールドのデータを取得できない。)
これを取得するために、ACF to REST APIというプラグインを導入します。
ACF to REST API

これを入れると投稿取得のAPIで

  "acf": {
    "test1": "xxxx"
  }

acfという項目が追加されます。

まとめ

Advanced Custom FieldsとACF to REST APIプラグインを導入して、カスタムフィールドの情報をWordPress REST APIで取得できるようにしました。
既存のWordPressソースをいじることなく簡単にできるのでおすすめです。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4