在另一个Joomla安装中,Joomla组件不工作


Not working Joomla component at another Joomla installation

我自己开发的Joomla(后端)组件遇到了麻烦。我没有遇到任何麻烦就开发了它,它在我的开发Joomla上工作得很好。

在另一个Joomla系统(不同版本)上安装组件后,组件本身似乎工作良好-但当选择要编辑或创建新条目时,我收到一个错误,说他找不到我开发的自定义助手类。

我正在注册类,因为它需要关于文档-正如已经提到的:它在我的开发Joomla中工作得很好。

对于测试,我用require_once()"手工"加载了帮助程序-错误消息本身消失了,但它也不起作用。它甚至不加载自定义视图,而是显示默认清单。

有谁知道出了什么问题吗?安装本身(通过zip)没有任何消息。

    开发Joomla版本:3.2.2
  • Client Joomla version: 3.3.1

导入代码摘录

controller.php

class DhhcController extends JControllerLegacy {
  /* ... */
  public function display($cachable = false, $urlparams = false) {
    JLoader::register('DhhcHelper', JPATH_COMPONENT .'/helpers/dhhc.php');
    JLoader::register('LanguageHelper', JPATH_COMPONENT .'/helpers/language.php');
    // ...
  }
}

任何帮助感激-谢谢!

我找到了缺少的东西,但仍然不知道为什么我需要它在特定的安装

将客户端安装克隆到我的开发机器后,我尝试了几种不同的方法(停用不同的组件…),但没有任何方法可以帮助我。来自客户端的特定Joomla安装(具有相同的Joomla版本!)不能与在同一台机器上运行的Joomla开发安装上的组件一起工作。

我调试了又调试,发现是什么使组件在安静了很长一段时间后不能正常工作,但仍然不知道确切的原因。

dhhc.php(主文件)中,我将文件修改为:

<?php
// ...
require_once(JPATH_COMPONENT .'/helpers/dhhc.php');
require_once(JPATH_COMPONENT .'/helpers/language.php');
JLoader::register('DhhcHelper', JPATH_COMPONENT .'/helpers/dhhc.php');
JLoader::register('LanguageHelper', JPATH_COMPONENT .'/helpers/language.php');
$controller = JControllerLegacy::getInstance('Dhhc');
$controller->execute(JFactory::getApplication()->input->get('task'));
$controller->redirect();

现在运行正常

我仍然想知道为什么我的开发安装包括controller.php每个站点上,而在客户端的安装中,controller.php只包含在直接从侧栏选择的主控制器上。

也许有人能帮帮忙;-).