WordPressを3.4.1にアップデートしたら管理画面が使えなくなってしまったのでメモ

これまで WordPress 3.3.2で運営していたブログを、何も考えずにWordPress3.4.1に更新してみたのですが、管理画面(ダッシュボード)に入れなくなってしまうという問題が発生しました。

WordPress 3.4.1に更新した後、WordPressのデータベースを更新する必要があるのですが、その際、以下の様なエラーメッセージを出すようになって、管理画面に一切入れなくなってしまいました。

Fatal error: Call to undefined method dbrc_wpdb::delete() in /**********/wp-includes/option.php on line 370

※ *****の部分は、WordPressをインストールしたディレクトリまでのフルパス。

とりあえず、いろいろ調べていたらDB Cache Reloaded Fix プラグインが有効化されているままアップデートしてしまったことが原因だったようです。

 あと、僕が WordPress 3.3.2から3.4.1に上げた時に起きたというだけで、正確な対象バージョンの範囲は把握していません。たぶん3.4以前のバージョンから、3.4にアップデートしようとすると起こる場合があると思うのですが、そもそもデータベース更新が必要なアップデートなら起こり得る問題かもしれません。というわけで、バージョンは適宜読み替えていただければと思います。

 

以下、対処法です。

WordPress 3.4.1にアップデート後、管理画面を表示しようとするとこのように「データペースの更新が必要です」というメッセージが表示されます。「WordPressデータベースを更新」ボタンを押して先に進みます。

 

すると、前出のFatal Errorが発生してしまいます。dbrc_wpdb::delete()という未定義のメソッドを呼んでいるため発生しています。

 ということで、とりあえずFTPでもSSHでもどんな手段でもいいんですが、以下の2つのファイル&ディレクトリを削除します。どちらもWordPressをインストールしたディレクトリ内の wp-content ディレクトリ配下にあります。

wp-content/db.php

wp-content/plugins/db-cache-reloaded-fix

 

消し終わったら再度、管理画面へブラウザからアクセスします。また上記の「データペースの更新が必要です」画面が出るので「WordPressデータベースを更新」ボタンを押すと、今度は以下のように「更新完了」画面が出るはずです。 

「続ける」ボタンを押すと管理画面が表示されますので、ちゃんとWordPressのバージョンが最新のものに更新されているか念のためフッタ表示などで確認しておきましょう。

 

次に、管理画面のメニューから プラグイン > インストール済みプラグイン を確認します。

プラグイン db-cache-reloaded-fix/db-cache-reloaded.php はエラーにより停止しました。エラー: プラグインファイルが存在しません。

というエラーメッセージが表示されています。先ほど DB Cache Reloaded Fix を無理矢理消してしまったので当然ですが。

 

かまわず「新規追加」から「DB Cache Reloaded Fix」で検索して再インストールします。 先ほど削除したファイルたちもここで再度インストールされます。

 

インストールが完了したらプラグインを有効化して、ブログが正しく動き始めたか確認しましょう。

 

ちなみに、別のWordPressで試してみたのですが、DB Cache Reloaded Fix を停止させてから更新するとこの問題は発生しませんでした。更新後、DB Cache Reloaded Fixを再有効化すれば元通りです。

なお、この問題は DB Cache Reloaded Fix プラグインだけでなく、DB Cache Reloaded プラグインでも発生するようです。

キャッシュが有効なままWordPressを更新したせいでおかしくなってしまった、ということなんでしょう。Quick Cache等も入れていますが、一応、そちらは悪影響はないようでした。たぶん(笑)

でも、WordPressをアップデートする際は念のため、少なくともキャッシュ系のプラグインは停止させてから実行したほうがよさそうですね。 

…次回も忘れてしまいそうですけど。