Drupal 7 でテーマのベーステーマが見つからないときのエラー
エラー
Drupal で有効でデフォルトになっているテーマのベーステーマが存在しないときに以下のような警告文が表示されます。 厳密にはエラーではありませんが、そのまま放置していても正常な動作をするようにはならないので広義のエラーと言ってもよいでしょう。
Notice: Undefined property: stdClass::$prefix system_theme_settings() (/root/to/drupal/modules/system/system.admin.inc ファイル 547行).
Notice: Undefined index: zen system_theme_settings() (/root/to/drupal/modules/system/system.admin.inc ファイル 575行).
Notice: Trying to get property of non-object system_theme_settings() (/root/to/drupal/modules/system/system.admin.inc ファイル 575行).
対処方法
Drupal がベーステーマを正しく認識できるようにすれば OK です。 ベーステーマが正しく認識されていない原因としてよくあるのは次の 2 つのパターンかと思います。
- テーマファイルが存在しない
- テーマファイルのパーミッションが正しくない
1 の場合はテーマファイルを所定の場所にダウンロードすれば OK です。
Drush が入っている場合は drush dl テーマ名
で。
2 の場合はテーマファイルが入っているディレクトリと各ファイルのパーミッションをサーバプロセスが読めるようにします。 場合によってはファイルの所有者やグループを変更する必要があることもあるでしょう。