WordPress REST API 有効化方法,安全な設定と活用ガイド

来自:素雅营销研究院

头像 方知笔记
2025年04月07日 10:10

WordPress REST APIとは

WordPress REST APIは、WordPressサイトのデータにプログラムでアクセスするための強力なインターフェースです。JSON形式でデータをやり取りできるため、モバイルアプリ開発やヘッドレスCMS構築、サイト間のデータ連携など、さまざまな用途に活用できます。

REST APIの有効化手順

1. 基本設定の確認

WordPress 4.7以降のバージョンでは、REST APIがデフォルトで有効になっています。まず、以下のURLにアクセスしてAPIが利用可能か確認しましょう。

https://あなたのサイトURL/wp-json/

2. パーマリンク設定の更新

APIが正常に動作しない場合、パーマリンク設定を更新する必要があります。

  1. WordPressダッシュボードにログイン
  2. 「設定」→「パーマリンク」を選択
  3. 「変更を保存」をクリック(設定を変更せずに)

3. プラグインによる制御

特定の条件下でAPIを無効化/有効化するには、以下のコードをテーマのfunctions.phpファイルに追加します。

// REST APIを有効化
add_filter('rest_enabled', '__return_true');
add_filter('rest_jsonp_enabled', '__return_true');

// 認証なしのアクセスを制限(オプション)
add_filter('rest_authentication_errors', function($result) {
if (!empty($result)) {
return $result;
}
if (!is_user_logged_in()) {
return new WP_Error('rest_not_logged_in', 'APIへのアクセスには認証が必要です', array('status' => 401));
}
return $result;
});

セキュリティ対策

REST APIを有効化する際は、セキュリティ対策が不可欠です。

1. アクセス制限方法

// 特定の名前空間のみ許可
add_filter('rest_endpoints', function($endpoints) {
$allowed_namespaces = array('wp/v2', 'myplugin/v1');
foreach ($endpoints as $route => $endpoint) {
$namespace = explode('/', $route)[0];
if (!in_array($namespace, $allowed_namespaces)) {
unset($endpoints[$route]);
}
}
return $endpoints;
});

2. 認証方法の実装

  • 基本認証: Basic Authenticationプラグインを利用
  • OAuth: OAuth1.0aプラグインをインストール
  • JWT認証: JWT Authentication for WP REST APIプラグインを使用

活用事例

有効化したREST APIを活用する代表的な例:

  1. カスタムフロントエンドアプリケーションとの連携
  2. モバイルアプリのバックエンドとして利用
  3. 複数WordPressサイト間のデータ同期
  4. サードパーティサービスとの統合

トラブルシューティング

APIが正常に動作しない場合のチェックリスト:

  1. WordPressのバージョンが4.7以上か確認
  2. パーマリンク設定を再保存
  3. セキュリティプラグインがAPIをブロックしていないか確認
  4. .htaccessファイルに問題がないか確認
  5. サーバーのmod_rewriteが有効か確認

まとめ

WordPress REST APIを適切に有効化することで、WordPressの可能性を大きく広げることができます。セキュリティ対策を講じた上で、この強力な機能を活用してください。開発の際は公式ドキュメントを参照し、常に最新のベストプラクティスに従うことが重要です。