【WordPress】 3.2 と Arras 1.5.0.1 テーマの不具合

 WordPress が 3.2ja にアップデートされた 7 月 7 日に、当ブログでも更新をかけていたのですが、テーマに使っている 当時の Arras (1.5.0.1) が WordPress 3.2 に対応していなかったため、ブログが一切表示されなくなっていました。バックアップも取っていなかったので、とりあえず緊急の対策を施して、ブログの表示はできるようにしておいたのですが、ダッシュボードには入れない状態でした。Arras テーマが対応してくれないことには、どうせ何もできないだろうと、ほおっておくことにしました。後日 Arras テーマがアップデートされたのは知っていたのですが、WordPress がアップデートされるたびにこんなことばかり繰り返しているのが嫌になって、今日の今日までほったらかしにしていたわけです。しかし、ブログが更新できないのもなんだなぁと思い、重い腰をあげて今日修復しました。
 
 WordPress を 3.2 にアップデートした際に出ていたエラーは以下のようなものです。

PHP Fatal error: Call to undefined method Arras_Widget_Tag_Cloud::WP_Widget_Tag_Cloud() in (自サーバーのパス)/wp-content/themes/arras/library/widgets.php

 このエラーが表示されると、ダッシュボードに入れないどころか、ブログ自体が表示されません。そこで、wp-content/themes/arras/library/widgets.php をテキストエディタで開き、Widget_Tag_Cloud をコメントアウトさせました。

class Arras_Widget_Tag_Cloud extends WP_Widget_Tag_Cloud {
function Arras_Widget_Tag_Cloud() {
//$this->WP_Widget_Tag_Cloud();
}
※この記述は Arras 1.5.0.1 のもので、現在の 1.5.1.1 にはありません。 

 この対策は、あくまでもブログを表示できるようにするためで、これだけではダッシュボードに入れません。そこで、最新版の WordPress (現在は 3.2.1 ) と、Arras 1.5.1.1 をダウンロードしてきます。まず、該当の widgets.php ( Arras の方です ) だけを ftp で上書きします。これでダッシュボードにログインしようとすると、まだいくつかのエラーが出ますので、そのエラーを見て、該当する WordPress のファイルだけをアップデートします。これでダッシュボードに入れるようになるので、すぐに WordPress の最新版をダッシュボードから更新します。

■ WordPress ダウンロード先
 Download WordPress
 
■ Arras 1.5.1.1 のダウンロード先
 Arras WordPress Theme Community Forums
 Zip ファイル: arras.1.5.1.1.zip

 この対策だと、Arras テーマの widgets.php だけが 1.5.1.1 になっただけで、他のファイルは 1.5.0.1 のままですが、とりあえず今は動作しています。