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パフォーマンス改善