テーマのアップデート後にサイドバーのウィジェットが消えたとき

WordPress個別サポート

テーマを変更したり新しいバージョンにアップデートすると、サイドバー内のウィジェットが空になる場合があります。

単純な原因は、テーマAで使えるサイドバーがテーマBでサポートされていないことですが、同じテーマでもアップデート後に

  • バージョンAのサイドバーがバージョンBでは使えなくなった
  • システムで管理するサイドバーの名称が変わった(例:side1 → sidebar1)

などの原因で発生します。

テーマを問わずに発生する問題ですが、ここではBizVektorの例で説明します。

BizVektor 0.9からバージョン1にアップデートすると…

BizVektorのバージョン0.9.2.7でトップページのサイドバーと共通(上)のサイドバーにテスト表示用のテキストウィジェットを追加します。

2つのサイドバーを設定(BizVektor0.9)
BizVektor 0.9で2つのサイドバーを設定

BizVektorのバージョン1.4.2にアップデートして「外観」-「ウィジェット」メニューを開くと、トップページ用のサイドバーは変わりありませんが、共通(上)からはテキストウィジェットが消えています。

共通(上)サイドバーからテキストウィジェットが消える
アップデート後、共通(上)サイドバーからウィジェットが消える

これは、新旧のバージョンで「共通(上)」の名前(システムで管理する名称)が変わっているためです。

functions.php(バージョン1.4ではfunctions_widgets.php)を見ると、サイドバー(トップページ)の定義名はバージョン0.9でも1.4でも同じ「top-side-widget-area」になっています。サイドバーの情報はアップデート後にも問題なく引き継がれます。

これに対してサイドバー(共通・上)はバージョン0.9では「primary-widget-area」ですが、バージョン1.4では「common-side-top-widget-area」になっています。

名称が変わったのはバージョン0.11.4の前後あたりのようです。

同じようにサイドバー(共通・下)もバージョン0.9の「secondary-widget-area」に対してバージョン1.4では「common-side-bottom-widget-area」に変わっています。

システム内での名称が変わったため、アップデート前のサイドバーに格納していたウィジェットの情報が引き継がれないのです。

消えたウィジェットはどこに?

サイドバーからウィジェットが消えてしまったとはいえ、古いバージョンで使っていたウィジェットは「外観」-「ウィジェット」メニュー下の「使用停止中のサイドバー」に格納されています。

旧バージョンで設定したサイドバーは「使用停止中のサイドバー」に
旧バージョンで設定したサイドバーは「使用停止中のサイドバー」に

このウィジェットを現在のバージョンのサイドバーに移動すれば、サイドバーを復旧できます。

旧バージョンで使っていた複数のサイドバーが無効になっている場合、「使用停止中のサイドバー」がいくつか作成されています。それぞれ、アップデート前の状況を判断して、新バージョンまたは新たなテーマのサイドバーにドラッグアンドドロップしましょう。

「使用停止中のサイドバー」のウィジェットを現在のテーマのサイドバーに戻す
「使用停止中のサイドバー」のウィジェットを現在のテーマのサイドバーに戻す

復元したサイドバーウィジェットのイメージは次のようになります。

現在のテーマのサイドバーを復元
現在のテーマのサイドバーを復元

WordPressトラブル