我尝试使用Smart Search模块在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 41Acepolls.php中的41-42行:
$module = JModuleHelper::getModule('mod_acepolls');
$content = self::_renderModule($module, array(), $id);如果我从web界面运行reindexing,它会成功运行,并将搜索索引结果保存在26页上。
发布于 2012-09-27 15:17:46
我还没有拿到mod_acepolls的源代码,所以我不是100%,但不管怎样:
通常,当通过web界面运行Joomla时,Joomla会使用JDocumentHTML类构建其网页。问题是,定义JDocumentHTML的文件也会导入JModuleHelper。因此,当mod_acepolls通过web界面运行时,JModuleHelper已导入。
最简单的解决方案是在finder_indexer.php中导入JModuleHelper (我猜您可以使用CLI/Cron运行该文件)。找到已经执行了一些导入的行(关于第45行),并插入以下内容:
jimport('joomla.application.module.helper');重要的是要记住,如果你升级网站,这可能会崩溃。
https://stackoverflow.com/questions/12609602
复制相似问题