2020.5.18

WP REST APIを使用したデータ取得についてのまとめ #1

キング

こんにちは!
Webエンジニアのキングこと澁田です!

今回は「WP REST API」について、紹介したいと思います。

 

WP REST APIとは

WordPressのデータベースの情報をJSON形式で取得できるAPIのことです。

・利点はWordPressのあるサーバーとは別ドメインのサイトで
記事などの表示・操作できるようになる。

・PHP以外のプログラミング言語でWordPressのデータの取得と操作できるようになる。
等が挙げられます。

それでは、簡単にデータの取得の説明です。
下記のようなURLにアクセスすれば、取得したい記事のデータがJSON形式で取得できます。
※「https://ysinc.co.jp」は対象のサイトのURLに置き換えてください。

https://ysinc.co.jp/wp-json/wp/v2/posts

上記の画像のように呪文が表示されます。
ここにはwordpressで投稿した記事のID,名前,日付,本文などの情報が「JSON」という形式で表示されています。

上記URLのパラメータを変更すると取得するデータを変更することができます。
例えば、以下のように「
per_page=5」を付け加えると、5件まで記事のデータを取得することができます。
数値に応じて取得する記事の件数を変えることができます。

https://ysinc.co.jp/wp-json/wp/v2/posts?per_page=5

&_embed」を付け加えると、アイキャッチの情報を含めたデータを取得することができます。

https://ysinc.co.jp/wp-json/wp/v2/posts?&_embed

このようにパラメータは色々ありますが、またの機会に詳しい紹介をできたらと思います。

最新のニュース5件のタイトルをphpで取得する方法

今回は弊社サイトの「新着情報」ページ(https://ysinc.co.jp/news/)から最新のニュース5件のタイトルをphpで取得したいと思います。

//php
<?php
  $url = 'https://ysinc.co.jp//wp-json/wp/v2/posts?per_page=5';
  
  //$urlの内容を文字列に読み込みます
  $json = mb_convert_encoding(file_get_contents($url), 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN');
  
  //JSONデータを連想配列に変換します。
  $arr = json_decode($json,true);
?>

<?php foreach($arr as $data): ?>
  <div>
    <h1><?php echo $data['title']['rendered']; ?></h1>
  </div>
<?php endforeach ?>

こちらをブラウザで確認すると以下のように表示されます。

おわりに

「新着情報」ページ(https://ysinc.co.jp/news/)から最新のニュース5件のタイトルを表示することができましたね。
このようにWP REST APIを利用することで簡単に記事の内容を取得することができます!
今回はphpのみでデータの取得を行いましたが、JavaScriptでデータを取得することも可能です。

またの機会に「WP REST API」について紹介したいと思いますのでお楽しみに!

  • TWEET!
  • SHARE!