2026年5月20日

2026年5月20日

WordPressのサイトヘルスで警告が出る場合の対処法

はじめに

管理画面のツール → サイトヘルスで「重大な問題が1件あります」「改善が必要な項目が3件あります」と表示されている。サイトヘルスの警告はWordPressがセキュリティとパフォーマンス上の問題点を自動検出して表示しています。一つずつ対処することでサイトの安定性が向上します。

よくある警告と対処法

「PHPのバージョンが古い」

# 現在のPHPバージョンを確認
php -v

# サーバーパネルでPHPバージョンを変更
# Xserver: PHPバージョン切替 → 8.2 を選択
# ConoHa: アプリケーション設定 → PHP設定

WordPress 6.x では PHP 8.1以上を推奨します。

「サイトがHTTPSで動作していない」

// wp-config.php に追加
define('FORCE_SSL_ADMIN', true);

// .htaccess でHTTPSリダイレクト
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

「スケジュールされたイベントが遅延している」

# WP-Cronの状態を確認
wp cron event list

# 手動でイベントを実行
wp cron event run --due-now

# サーバーのcronに移行(推奨)
# wp-config.php
define('DISABLE_WP_CRON', true);
# crontab -e で追加
*/5 * * * * wget -q -O - https://yoursite.com/wp-cron.php?doing_wp_cron

「REST APIでエラーが発生している」

# REST APIのステータスを確認
wp eval 'echo rest_url();'
curl https://yoursite.com/wp-json/wp/v2/

# パーマリンクをリセット
wp rewrite flush --hard

「背景での更新が動作していない」

// wp-config.php — 自動更新の設定
define('WP_AUTO_UPDATE_CORE', true);       // コアの自動更新
define('AUTOMATIC_UPDATER_DISABLED', false); // 自動更新を無効にしない

「データベースのテーブルにエラーがある」

# データベースを修復
wp db repair

# または wp-config.php に追加してブラウザからアクセス
define('WP_ALLOW_REPAIR', true);
# https://yoursite.com/wp-admin/maint/repair.php にアクセス後、削除

解決手順

ステップ1:サイトヘルスの詳細情報を確認する

1. 管理画面 → ツールサイトヘルス

2. 「状態」タブで赤・オレンジの項目を確認

3. 各項目をクリックして詳細な説明と推奨対応を確認

ステップ2:「情報」タブでサーバー情報を把握する

「情報」タブには以下の情報が表示されます:

  • PHPバージョン・PHP設定値
  • WordPressのアドレスとサイトアドレス
  • アクティブなプラグイン一覧
  • データベース情報
  • ファイルシステムの書き込み権限

この情報はサポートに問い合わせる際にも役立ちます。

ステップ3:優先度の高い警告から対処する

| 重要度 | 内容 | 対処方法 |

|--------|------|---------|

| 重大 | PHP バージョンが古い | ホスティング管理画面でPHPバージョンアップ |

| 重大 | HTTPS未対応 | SSL証明書設定・wp-config.php修正 |

| 改善 | 非推奨のPHP設定 | php.ini を更新 |

| 改善 | WP-Cronの遅延 | サーバーcronに移行 |

| 改善 | 安全でないプラグイン | プラグインを更新または削除 |

ステップ4:カスタムのサイトヘルスチェックを追加する

// functions.php — 独自のサイトヘルスチェックを追加
add_filter('site_status_tests', function($tests) {
    $tests['direct']['my_custom_check'] = [
        'label' => '独自チェック',
        'test'  => 'my_site_health_check',
    ];
    return $tests;
});

function my_site_health_check() {
    $result = [
        'label'       => 'カスタム設定',
        'status'      => 'good',
        'badge'       => ['label' => 'セキュリティ', 'color' => 'blue'],
        'description' => '<p>問題なし</p>',
        'test'        => 'my_custom_check',
    ];
    
    if (get_option('my_insecure_option')) {
        $result['status']      = 'critical';
        $result['label']       = '危険な設定が有効です';
        $result['description'] = '<p>my_insecure_option を無効にしてください。</p>';
    }
    
    return $result;
}

注意事項

  • PHPバージョンをアップする前に、プラグインとテーマがそのPHPバージョンに対応しているか確認してください。
  • すべての警告を一度に解決しようとせず、重大な問題から順番に対処しましょう。

まとめ

サイトヘルスの警告は重大な問題(赤)から順に対処します。PHPバージョンのアップグレード、HTTPS設定、WP-CronのサーバーCron移行が主要な改善項目です。定期的にサイトヘルスを確認する習慣をつけましょう。関連記事:PHPバージョンを切り替える方法WordPressのWP-Cronパフォーマンス改善

お気軽にご相談ください

お見積りへ お問い合わせへ