web-dev-qa-db-ja.com

アップグレード後、検索モジュールは結果を与えません

Drushを使用してD6-> D7からWebサイトをアップグレードしましたsite-upgradeコマンド。 bashスクリプトを使用すると、drush archive-dump D6サイトの最新バージョンであることを保証し、Drupal 7.にアップグレードします。7。アップグレード後、Configurationモジュールを介して新しいテーマと設定を適用します。 。

アップグレード後、検索のインデックスを再作成すると、次の出力が表示されます。

 drush cron -v 
初期化Drupal 7.33ルートディレクトリ[通知] 
/var/www/2014/comparative_literature/snapshot/dest_www 
初期化済みDrupal [notice] 
 sites/comparative-literature 
 Indexing node 1のサイト比較文学[ok] 
インデックス作成ノード2. [ok] 
インデックス作成ノード3. [ok] 
インデックス作成ノード4. [ok] 
インデックス作成ノード5. [ok] 
インデックス作成ノード6. [ok] 
インデックス付けノード7. [ok] 
インデックス付けノード8. [ok] 
インデックス付けノード9。 [ok] 
未定義のインデックス:email email.module:109 [通知] 
未定義のインデックス:email email.module:109 [通知] 
未定義のプロパティ:stdClass :: $ uri file.module:737 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:775 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:819 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:862 [notice] 
未定義のプロパティ:stdClass :: $ filemime file.module:834 [notice] 
未定義のプロパティ: stdClass :: $ filemime file.module:834 [notice] 
 Undefined property:stdClass :: $ filemime file.module:834 [notice] 
 Undefined property:stdClass :: $ filemime file.module :834 [notice] 
 Undefined property:stdClass :: $ filemime file.module:744 [notice] 
 Unde細かいプロパティ:stdClass :: $ filesize file.module:744 [notice] 
未定義のプロパティ:stdClass :: $ filename file.module:750 [notice] 
 Indexing node 15. [ok] 
未定義のインデックス:email email.module:109 [通知] 
未定義のインデックス:email email.module:109 [通知] 
未定義のプロパティ:stdClass :: $ uri file.module: 737 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:775 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:819 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:862 [notice] 
未定義のプロパティ:stdClass :: $ filemime file.module:834 [notice] 
未定義のプロパティ:stdClass :: $ filemime file.module:834 [通知] 
未定義のプロパティ:stdClass :: $ filemime file.module:83 4 [notice] 
 Undefined property:stdClass :: $ filemime file.module:834 [notice] 
 Undefined property:stdClass :: $ filemime file.module:744 [notice] 
未定義のプロパティ:stdClass :: $ filesize file.module:744 [notice] 
未定義のプロパティ:stdClass :: $ filename file.module:750 [notice] 
 Indexing node 16. [ok] 
インデックスノード18. [ok] 
インデックスノード19. [ok] 
インデックスノード20. [ok] 
インデックスノード21. [ok] 
インデックスノード22。[ok] 
インデックスノード23。[ok] 
インデックスノード24。 [ok] 
インデックスノード25。[ok] 
インデックスノード26。 [通知] 
 Cronの実行が成功しました。 [成功] 
コマンドディスパッチ完了[通知] 

このサイトは、ベーシックページ、教員、ニュースの3つのコンテンツタイプのようにシンプルです。ページのインデックスは上で問題なく、News and Facultyはfile(人のヘッドショット)にエラーをスローし、フィールドの問題をメールで送信すると思います...

しかし、サイトを使用してページを編集したり、画像を教員にアップロードしたりすると、正常に動作するようです。 検索インデックスはBuiltであり、コンテンツはテーブルにありますが、say academicsとそのキーワードがbasic Drupal "ページ"コンテンツタイプノード。

検索ページでは、次のような通知が表示されることがあります(ファイルフィールドの問題、メールフィールドの問題など)。

お知らせ:未定義のインデックス:email_field_formatter_view()のメール(/project/drupalwww/sites/mysite/modules/contrib/email/email.moduleの109行目)。
お知らせ:未定義のインデックス:メールemail_field_formatter_view()(/project/drupalwww/sites/mysite/modules/contrib/email/email.moduleの109行目)。
通知:未定義のプロパティ:stdClass :: $ uri in theme_file_link()(行737 of /project/drupalwww/modules/file/file.module).
通知:未定義のプロパティ:stdClass :: $ filemime in theme_file_icon()(行775//project/drupalwww/modules/file/file.module )。
通知:未定義のプロパティ:stdClass :: $ filemime in file_icon_path()(/project/drupalwww/modules/file/file.moduleの行819)。
通知:未定義のプロパティ:stdClass :: $ filemime in file_icon_map()(/project/drupalwww/modules/file/file.moduleの862行目)
通知:未定義のプロパティ:stdClass :: $ filemime in file_icon_path()(/ 834行目/ project/drupalwww/modules/file/file.module)。
通知:未定義の小道具erty:stdClass :: $ filemime in file_icon_path()(/project/drupalwww/modules/file/file.moduleの行834)。
通知:未定義のプロパティ:stdClass :: $ filemime in file_icon_path()(行/project/drupalwww/modules/file/file.moduleの834)。
通知:未定義のプロパティ:stdClass :: $ filemime in file_icon_path()(/ project/drupalwww/modules/file/file。 module)。
通知:未定義のプロパティ:stdClass :: $ filemime in theme_file_link()(/project/drupalwww/modules/file/file.moduleの744行目)。
通知:未定義のプロパティ: stdClass :: $ filesize in theme_file_link()(744//project/drupalwww/modules/file/file.module).
通知:未定義のプロパティ:stdClass :: $ filename in theme_file_link()(750行目/project/drupalwww/modules/file/file.module).
通知:未定義のインデックス:_text_sanitize()のtext_processing(/project/drupalwww/modules/field/modules/text/text.moduleの319行目) 。
通知:未定義のインデックス:_text_sanitize()のtext_processing(行319 /project/drupalwww/modules/field/modules/text/text.module)

私が知る限り、エラーはなく、アップグレードプロセス中のNoticesのみです。まあ、サイトの1つのエラー シリアルフィールド の使用-がありますが、プロジェクトページはそれを無視するように言っています。 CCKの移行では、すべてのフィールドが移行されたことが表示されますが、メールとリンクのフィールドは、元のコンテンツタイプと緩やかに関連付けられていますか? enter image description here

私はとてもイライラしています! Noticesをたくさん取得しましたが、致命的なエラーは何もありません。サイトは、ログインユーザーとして編集可能ですが、私が知る限り、このサイトは編集可能です。しかし、私は検索を修正したいです(そしてボーナスとしてNoticesを取り除きます)...

ポインタ、考え、ヒント、祈りを歓迎します。 :D

1
tenken

わかりました、それで私はちょっとばかでした、そして、機能は吸います。説明させてください...

サイトのアップグレード用のD7テーマの開発のある時点で、関数を作成しました。

function MYTHEME_preprocess_search_result(...) { ...}

テーマ検索結果へ。それは正しく機能していなかったので、私はそれが本体であるとコメントアウトしました:

function MYTHEME_preprocess_search_result($vars) {
  #dpm($vars);
  #dpm($vars['info']);
  #unset($vars['info']);
}

しかし、上記の関数では、$varsパラメータに参照渡し演算子がありません。適切な関数シグネチャは次のとおりです。

function MYTHEME_preprocess_search_result(&$vars) { /* ... */ }

関数の本体をコメント化するだけで、関数自体が$varsを消費し、resultsを返さない(参照渡し演算子がないため)ため、すべての検索で「検索結果なし」と表示されます。見つかりました」-ただし、エラーは発生しません。

注意:

  • Xdebugといくつかのターゲットブレークポイントを使用して、たとえば検索フォームHTTP POSTからfunctionn search_viewの結果を追跡した後、エラーが発生しました。
  • これがオブジェクト指向のメソッドである場合、IDEは、署名が誤っていると言える可能性があるため、関数は機能しません。マクロから作成されたhook関数に依存すると、ばかげた。
  • たぶん、以前のGitコミットを調べるなど、これを確認する他の方法があったかもしれませんが、私にとって、この種のバグは追跡するのが本当に難しいです。
0
tenken