# API05004: WordPress APIが無効

## 意味[​](#what-this-means "意味への直接リンク")

あなたのサイトではWordPress REST APIが無効になっています。WooCommerceやWCPOSなどのすべてのモダンなWordPress機能は、このAPIに依存しています。

## 一般的な原因[​](#common-causes "一般的な原因への直接リンク")

* **セキュリティプラグイン** — プラグインがREST APIアクセスをブロックしている
* **ホスティング制限** — ホストがREST APIを無効にしている
* **カスタムコード** — テーマやプラグインがAPIを無効にしている
* **ファイアウォールルール** — WAFがREST APIエンドポイントをブロックしている

## 修正方法[​](#how-to-fix "修正方法への直接リンク")

### 1. REST APIをテストする[​](#1-test-the-rest-api "1. REST APIをテストするへの直接リンク")

ブラウザで`https://yoursite.com/wp-json/`にアクセス：

* 利用可能なルートを含むJSONを返すべき
* エラーが出るか何も表示されない場合、ブロックされています

### 2. セキュリティプラグインを確認する[​](#2-check-security-plugins "2. セキュリティプラグインを確認するへの直接リンク")

REST APIをブロックする一般的なプラグイン：

**Wordfence:**

* ファイアウォール → すべてのファイアウォールオプション
* 「REST APIを無効にする」オプションを無効にする

**iThemes Security:**

* セキュリティ → 設定 → WordPress調整
* REST APIを有効にする

**REST API無効化プラグイン:**

* このプラグインを完全に無効化する

### 3. カスタムコードを確認する[​](#3-check-for-custom-code "3. カスタムコードを確認するへの直接リンク")

テーマの`functions.php`やカスタムプラグイン内で以下を探す：

```
// This code disables REST API - remove it

add_filter('rest_authentication_errors', function($result) {

    return new WP_Error('rest_disabled', 'REST API disabled');

});
```

### 4. .htaccessを確認する[​](#4-check-htaccess "4. .htaccessを確認するへの直接リンク")

`/wp-json/`をブロックしているルールを削除する：

```
# Bad - blocks REST API

RewriteRule ^wp-json - [F,L]
```

### 5. ホスティングプロバイダーに連絡する[​](#5-contact-hosting-provider "5. ホスティングプロバイダーに連絡するへの直接リンク")

一部のホストはデフォルトでREST APIをブロックしています：

* 有効にするよう依頼する
* セキュリティ制限について尋ねる
* ホスティングのドキュメントを確認する

## なぜREST APIが重要なのか[​](#why-rest-api-matters "なぜREST APIが重要なのかへの直接リンク")

WordPress REST APIは以下に不可欠です：

* モバイルアプリ
* サードパーティ統合
* WooCommerce機能
* WCPOS操作

これを無効にすると、多くの機能が壊れます。

## 関連するエラー[​](#related-errors "関連するエラーへの直接リンク")

* [API05001](/ja/error-codes/API05001.md) — WooCommerce APIが無効
* [API03006](/ja/error-codes/API03006.md) — サポートされていないメソッド
