こんにちは!
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」について紹介したいと思いますのでお楽しみに!