2

モジュールSmartSearchを使用してJoomlaでコンテンツの自動再インデックスを設定しようとしています。

http://docs.joomla.org/Setting_up_automatic_Smart_Search_indexing

Joomla 2.5.3

sshでサーバーにログインしてスクリプトを実行すると、致命的なエラーが発生します...そしていくつかの投稿を保存します(8ページの検索インデックス結果)。

誰かがこの問題を解決する方法を知っていますか?

* Processed batch 1 in 0.213 seconds.
* Processed batch 2 in 0.182 seconds.
* Processed batch 3 in 0.177 seconds.
* Processed batch 4 in 0.009 seconds.

PHP Fatal error: Class 'JModuleHelper' not found in / var / wolq.ru / plugins / content / acepolls / acepolls.php on line 41
Fatal error: Class 'JModuleHelper' not found in / var / wolq.ru / plugins / content / acepolls / acepolls.php on line 41

acepolls.phpの41〜42行:

$module = JModuleHelper::getModule('mod_acepolls');
$content = self::_renderModule($module, array(), $id);

Webインターフェイスからインデックスの再作成を実行すると、正常に実行され、検索インデックスの結果が26ページに保存されます。

4

1 に答える 1

0

mod_acepolls のソース コードを入手していないので、これについて 100% ではありませんが、とにかく:

通常、Joomla を Web インターフェイスから実行する場合、Joomla はJDocumentHTMLクラスを使用して Web ページを作成します。問題は、 JDocumentHTMLを定義するファイルがJModuleHelperもインポートすることです。そのため、mod_acepolls が Web インターフェースによって実行されている場合、JModuleHelperはすでにインポートされています。

これに対する最も簡単な解決策は、JModuleHelperfinder_indexer.php (CLI/Cron を使用して実行すると思われるファイル) にインポートすることです。すでにいくつかのインポートを行っている行 (45 行目あたり) を見つけて、次を挿入します。

jimport('joomla.application.module.helper');

ウェブサイトをアップグレードすると、これが壊れる可能性があることを覚えておくことが重要です.

于 2012-09-27T07:17:45.717 に答える