• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

株式会社ハイファイブクリエイト

東京都を拠点にWebサイト制作やシステム構築、WordPress保守管理やウェブコンサルティングを提供。

  • SERVICE
  • ABOUT
  • WORKS
  • BLOG
  • NEWS
  • CONTACT
ホーム / ブログ / TIPS / WP REST APIを使って静的HTMLページにWordPressの投稿情報を表示する

WP REST APIを使って静的HTMLページにWordPressの投稿情報を表示する

池田祐太郎 | 2018年12月15日 更新 | 2017年12月2日 公開

WordPress4.7でプラグイン利用だったREST APIがコアに組み込まれ、4.7以上のバージョンでは特に設定せずとも使えるようになりました。

WP REST APIでできることは例えば以下のようなことです。

  • WordPress記事や固定ページ等の情報にアクセスできる
  • アクセスした情報を表示することはもちろん、表示したページ側から投稿、更新、削除といった実行が可能
  • PHPを利用せずにJavaScript(JSON形式)で扱える!

記事の投稿や更新、削除といった記事側へアクセスが必要な場合はOAuth認証やBasic認証などで認証させる必要があります。
また、以前のプラグインだったバージョンとコアに組み込まれたバージョンで仕様が変わっており、ウェブ上の情報も古いものが結構あったりしてデモが動いてなかったりするので、実際に触って見るときにはリファレンスを参考にしたほうが良さそうです。

WP REST API v2 Documentation

WP REST APIの詳しい説明はたくさんの方がわかりやすく説明しているページがありますので、そちらを参考ください。

WP REST APIを使ってWordpressをAPI化してみよう! | バックエンドへの道
WordPress が REST-API をベースにしたエディターとカスタマイザーの開発プロジェクトを開始 – Capital P

目次

  • 1 静的HTMLからWordPressの情報を取得して表示したい
    • 1.1 とりあえず作ってみた
    • 1.2 課題は表示速度とSEO
  • 2 最後に

静的HTMLからWordPressの情報を取得して表示したい

今回やりたいのは、「WordPress関係なく、静的なHTMLページでPHPを利用せずに、WordPressで投稿された記事一覧を取得する」ということです。

これが実現できれば何がいいのかというと、「WordPressは記事の管理として利用し、投稿した記事の取得と表示等は別に管理ができる」となり、

  • WordPressは記事管理のためのツール
  • 訪問者がアクセスするページはWordPressではないページ
  • つまり、システム(WP)とフロント(訪問者が閲覧するサイト)が区分けできる

というメリットがあります。例えばセキュアな環境にWordPressを設置しておき、実際のサイトと区別することでセキュリティ対策を行いながらWordPressというCMSを利用できるといういいとこ取りな使い方も可能です。

とりあえず作ってみた

以下がサンプルページです。

WP REST API 取得デモ

(REST APIの仕様が変わっていなければ)ローディングが表示されたあとに各記事が表示されるはずです。
動かないときのためにGIFアニメも貼っておきます。

また、以下にJS Fiddleに公開したのでJS, HTML, CSS等ソースコードはご参考ください。

コーディングはBootstrap v4, ローディングアイコンはFontAwesome, JSONデータの扱いはjQueryを利用しました。

追記: WordPressのバージョンは4.9.1です。

今回のサンプルでは「詳細を見る」をクリックすると元記事に遷移していますが、SPA(シングルページアプリケーション)で作る前提で、ページ遷移無しに各記事をクリックするとコンテンツを入れ替えるなどで制作が可能です。

また、Advanced Custom FIeldsなどでカスタムフィールドの情報を取得する場合はACF to REST APIというプラグインが必要だったり、アイキャッチ画像やカテゴリ情報とタグ、前後の記事情報等REST APIに含まれていない情報はアクションフックやフィルターフック等で追加して上げる必要があります。こちらの記事が参考になります。

WP REST APIをシングルページアプリケーションで使うためにいろいろカスタマイズしてみた | それいけ!フロントエンド

課題は表示速度とSEO

WP REST APIとても便利で夢が広がりますが、記事取得に少々時間がかかります。サンプルではテキスト情報のみですが、画像やアイキャッチ画像を取得表示する場合はより時間がかかります。REST API用のキャッシュを有効にして速度向上させるプラグインもあり、表示速度はこれから解決されることが期待されます。

また、個別ページがあるわけではないのでSEOには強くありません。現状では、アプリケーション内でウェブデータを引っ張ってくる、RSSの代わりに利用する等が現実的なところでしょうか。

最後に

以上、簡単なサンプルですがHTMLからWordPress情報を取得して表示するというデモでした。

WP REST APIを利用すれば投稿、固定ページ以外にもカスタム投稿タイプやカスタムフィールドの取得も可能なため、本格的にWordPressを管理のためのツールとして利用できるようになりました。

WordPressは初めて触れてから8年位経ちますが、その進化は止まること無く益々便利に機能的になっているツールです。4.7でREST APIがコアへ組み込まれ、2019年にはバージョン5となりGutenbergという新しいエディタ方法も公開予定で、しばらく目が離せなそうです。

今回の制作にあたって参考させていただいた記事:

WP REST APIでの情報の取得と表示・使い道について | ソフプラント

WordPress REST API を試してみる(前編: まずは取得から) | クラウドット株式会社

WP REST APIの検証とWordPressのテーマへの組込 | in-Pocket インポケット

メールコンサルティング
WordPress保守管理サービス

Filed Under: TIPS, WordPress 関連タグ:WordPressカスタマイズ

池田祐太郎

WordPressの導入を10年以上にわたって手掛けており、主に小〜中規模のコーポレートサイト・ECサイト・ブランドサイト等の企画・開発・保守・コンサルティングなどを行ってきました。2012年にハイファイブクリエイトを創業し、現在はWordPressの保守やコンサルティング、ディレクションや開発業務などを担当しています。 プロフィール詳細

この記事と関連する記事

WordPressの固定ページでタグやカテゴリーを使いたいときはカスタム投稿タイプを検討する
2022年1月27日
タグ: WordPressカスタマイズ
カテゴリー: WordPress
フレームワークを使ってWordPressサイトをリニューアルしたら表示速度が速くなった話
2018年6月4日
タグ: Webサイト高速化, WordPressカスタマイズ
カテゴリー: WordPress, ホームページ制作, モバイル
WP固定ページや投稿内でphpファイルを読み込むショートコード
2018年4月1日
タグ: WordPressカスタマイズ
カテゴリー: TIPS

人気記事

  1. git pull してもエラーが出てファイルが反映されないときの対処法
  2. 同一サーバー上に構築するWordPressのテスト環境の作り方
  3. WordPressの固定ページでタグやカテゴリーを使いたいときはカスタム投稿タイプを検討する
  4. サイト制作の要件定義書に普段書いている内容(ダウンロード可)
  5. WordPress において PHP 8.1 に更新していいかどうか検証
  6. [便利]困難な判断を10秒で AI が客観的に導き出すツールを試してみた

最初のサイドバー

WordPress保守管理サポート

Search

最近の投稿

  • [便利]困難な判断を10秒で AI が客観的に導き出すツールを試してみた
  • WordPress のクロスサイト・スクリプティング被害にあった事例を共有します
  • メール作業の生産性を向上させる最低限覚えておくべき Gmail のショートカットキー
  • タブ固定とタブ一発アクセスのショートカットキーの組み合わせでブラウザ作業の生産性を向上
  • メールフォームプラグイン MW WP Form を使いながら WP Rocket を使う場合にエラー回避する設定

カテゴリー

  • CSS初心者
  • HTML初心者
  • TIPS
  • WooCommerce
  • WordPress
  • エステサロン
  • お知らせ
  • キュレーション
  • サイトマップ
  • システム会社
  • デベロッパーツール入門
  • ブログ
  • ホームページ制作
  • ホームページ制作無料講座
  • メール
  • モバイル
  • 仕事のこと
  • 制作実績
  • 整体院
  • 美容院
  • 雑感

タグ

Android BtoC CMS css elementor git google workspace Gutenberg HTML iPhone jQuery Mac MAMP php SEO SNS ssh SSL Sublime Text Webサイト高速化 Windows WordPress WordPressカスタマイズ WordPressテーマ WordPress構築調査 WPRocket アクセス解析 アプリ クラウド クラウドソーシング サイト引っ越し サブスクリプション サーバー ショートカットキー スマホサイト スマートフォン ツール ブログ プラグイン マーケティング リニューアル 保守管理 改ざん 最適化 集客するサイト構築

アーカイブ

CONTACT

お問い合わせはこちら

Footer

  • PRIVACY POLICY
  • 情報セキュリティ基本方針
  • 特定商取引法に基づく表示
  • 転載/引用

© 2023 high five create All rights reserved.