php - fatal error Joomla+Cron+Smart Search+Acepolls

标签 php joomla ssh cron

我尝试使用智能搜索模块在 Joomla 中设置自动重新索引内容。

http://docs.joomla.org/Setting_up_automatic_Smart_Search_indexing

Joomla 2.5.3

当我通过 ssh 登录到服务器并运行脚本时,我遇到了一个 fatal error ......并保存了一些帖子(搜索索引结果在 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);

如果我从网络界面运行重新索引 - 它运行成功并将搜索索引结果保存在 26 页上。

最佳答案

我没有得到 mod_acepolls 的源代码,所以我不是 100% 的,但无论如何:

通常,当通过 Web 界面运行 Joomla 时,Joomla 使用 JDocumentHTML 构建其网页。类(class)。问题是定义 JDocumentHTML 的文件还导入 JModuleHelper .所以当 mod_acepolls 通过 web 界面运行时,JModuleHelper已经导入。

最简单的解决方案是导入 JModuleHelper在 finder_indexer.php (我猜你使用 CLI/Cron 运行的文件)。找到已经进行了一些导入的行(大约第 45 行)并插入以下内容:

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

重要的是要记住,如果您升级网站,这可能会中断。

关于php - fatal error Joomla+Cron+Smart Search+Acepolls,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12609602/

相关文章:

php - Joomla 数据库-> 查询。填充查询对象时报价类型之间有什么区别

configuration - 如何修复在 gitlab 中创建新仓库后给出的 URL?

Python - 刺激 ssh 命令搞乱文件路径

php - 以一种形式更改密码和更改电子邮件地址

joomla 注册表单验证

php - Xdebug 停止工作并且无法在断点处停止

joomla - 为 Joomla! 创建 RSS 提要2.5.7

bash - 附加到 RO 文件系统上通过 ssh 启动的命令的远程环境变量

PHP 密码尝试阻止

javascript - 如何将fineuploaders uuid 保存在数据库中?