WordPressにログインできない!?「データベースはすでに最新です!」から進まない問題の解決法
ある日突然、WordPressにログインしようとしたら「WordPress のデータベースはすでに最新です!」と表示され、そのままブログのトップページに戻されてしまった――そんな経験はありませんか?
今回は実際に私の環境で発生したこの問題と、その解決方法について共有します。
🔍 症状
- ログインページ(
/wp-login.php
)で正しく認証される - しかしその直後に「WordPress のデータベースはすでに最新です!」と表示
- 「OK」を押すと、ダッシュボードではなくブログのトップページにリダイレクトされる
- どのブラウザ・端末でも同様の挙動
🧭 原因の切り分けと対応
✅ 1. ブラウザのキャッシュ・Cookieを削除 → 効果なし
シークレットモードや別ブラウザでも再現。問題はサーバー側にあると判断。
✅ 2. プラグイン一括無効化(wp-content/plugins
のリネーム)
plugins
フォルダを plugins_backup
にリネームして全プラグインを無効化。
すると今度は次のような 致命的なエラー(fatal error) が表示されました:
Fatal error: Uncaught Error: Call to undefined function wp_kses() in /wp-content/db.php on line 35
⚠ 問題の正体:W3 Total Cache の特殊ファイル
原因は「W3 Total Cache」プラグインが作成する次のファイルが、プラグイン無効化後も残っていたことでした。
wp-content/advanced-cache.php
wp-content/db.php
- (場合によっては
wp-content/object-cache.php
)
これらのファイルは WordPress の初期読み込み時に 自動で読み込まれる特別な仕組みになっています。
しかしプラグインが無効な状態でこれらが残っていると、WordPress本体が処理に失敗し、致命的エラーになります。
🛠 解決方法
以下のファイルを削除またはリネームすることで、問題が解消されました:
bashコピーする編集するwp-content/advanced-cache.php
wp-content/db.php
wp-content/object-cache.php(存在する場合)
削除後、WordPressに無事ログイン可能に。
🔄 フォルダ名を戻してもOKに
plugins_backup
を plugins
に戻してもダッシュボードにアクセスできるようになりました。
つまり問題の本質は「W3 Total Cacheのキャッシュ機構が壊れた状態で残っていたこと」だったというわけです。
🧼 今後の対策と教訓
✔ キャッシュ系プラグインの削除時は完全に処理する
W3 Total Cacheなどは以下のような専用ファイルを作成します:
ファイル名 | 説明 |
---|---|
advanced-cache.php | キャッシュのエントリポイント |
db.php | データベースアクセスのフック |
object-cache.php | オブジェクトキャッシュ処理 |
これらはプラグインを無効化しても自動で削除されません。削除する場合は手動でファイル削除が必要です。
✔ W3 Total Cacheを使い続ける場合の再構築手順
- WordPressの管理画面からW3 Total Cacheを一度削除
- 再インストールして設定を再構築
- トラブル時は一時的に
plugins
フォルダをリネームすることで復旧可能
✔ 使いやすく安定した代替プラグインも検討
もしW3 Total Cacheのような高機能が不要であれば、以下のような軽量かつ安定性の高いキャッシュプラグインもおすすめです:
- WP Super Cache
- LiteSpeed Cache(LiteSpeed対応サーバーで)
- Autoptimize
📝 まとめ
WordPressで「ログイン後ダッシュボードに入れない」問題は、キャッシュプラグインによる干渉が原因であることが少なくありません。
キャッシュプラグインを削除・変更する際には、
- 関連ファイル(
db.php
など)を忘れずに削除 - トラブル時は
plugins
フォルダのリネームで一括無効化 - 再発防止のために、定期バックアップや軽量プラグインの選定
などを心がけましょう。