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