web-dev-qa-db-ja.com

Drupal 7.10アップグレードテーマの問題

Drupal 6.22で実行していて、drupal 7.10にアップグレードしようとしました。アップグレードにより、すべてが成功したことが報告されました。

私の問題は、以前は「コントラスト」というテーマを使用していたことです。無効にしたと思いましたが、今ではそのテーマへの参照があります。

これらのエラーを回避するにはどうすればよいですか?

ガーランドをall/themesフォルダーに移動し、コントラストを付けるために名前を変更しようとしましたが、別のエラーセットが作成されるだけでした。

Notice: Undefined variable: site_name_and_slogan in include() (line 14 of   /mysite/sites/all/themes/contrast/page.tpl.php).
Notice: Undefined variable: site_name_and_slogan in include() (line 14 of /mysite/sites/all/themes/contrast/page.tpl.php).
1
George Hernando

別のデフォルトテーマを選択し、無効にして「コントラスト」ディレクトリを削除しました。キャッシュをクリアして確認しますが、そこにないテーマを参照しようとするものは何もないはずです。

1
mtro

構成->開発->ロギングとエラー

表示するエラーメッセージを設定します:エラーと警告

、通知は表示されません。

通知は良いことです。最良のオプションは、テーマでそれらを修正するか、修正することですが、それがオプションでない場合は、上記の手順で非表示になります。開発者として、通知はすぐに小さな間違いをキャッチします。そうしないと、後でデバッグ時間が大幅に増える可能性があります。

PHP環境での通知は非表示になることが多く、非表示にすることはそれほど大きな問題ではありません。Drupal 7は、デフォルトで強制的に出荷されます。多くのモジュールが通知を処理するように調整されていなかったため、ユーザーがD6以前で通知レポートを有効にすると見栄えが悪くなりました。

テーマが表示されない場合、変更は次のような変更である可能性があります:if ($site_name_and_slogan)からif (isset($site_name_and_slogan)

基本的に、変数を使用する前に、変数を定義する必要があります。

例:

<?php

// throws a notice if $foo was never defined above it
if ($foo) {
}

// will not throw a notice, even if we did not define it above
if (isset($foo)) {
}

// will throw a notice if we never defined what $output is
print $output;

// will not throw a notice
$output = 'hi';
print $output;
0
Coder1