尝试在 Joomla 中安装转换后的 1.5 模板会导致 500 服务器错误。原来是由PHP错误引起的:
试图在第 54 行的 library/joomla/installer/adapters/template.php 中获取非对象的属性
和
致命错误:调用
attributes()
非对象的成员函数”在下一行。
有任何 Joomla 专家有想法吗?
这种类型的错误是模板 mainfest (XML) 文件格式错误的结果。即它的结构不正确。
当您转换 1.5 模板时,我会查看 docs.joomla.org 文章“将 Joomla 1.5 模板升级到 Joomla 2.5 ”
如果您发布模板清单文件,我们可能会提供帮助。
Joomla库/joomla/installer/adapters/template.php的第 53 和 55 行与加载语言文件有关。具体线路如下。如您所见,这仅与从清单中查找语言文件的名称有关
$this->manifest = $this->parent->getManifest();
$name = strtolower(JFilterInput::getInstance()->clean((string) $this->manifest->name, 'cmd'));
$client = (string) $this->manifest->attributes()->client;
我建议第 53 行找不到 $this->parent->getManifest() ,因此在一个空对象($this->manifest
部分)上调用属性,并且找不到实例,$this->manifest
因为它没有存在。
如果您不知道清单是什么,请阅读此Joomla Wiki 文章。我建议您是否永久升级您通读的模板并更新您的模板 XML 文件以确保它适用于所有这些。正如上面所说的 cppl 也尝试阅读将 Joomla 1.5 模板升级到 2.5 here。特别是在您的情况下,语言部分似乎会产生错误-但是由于清单是通过Joomla非常普遍的事情,我怀疑这只是找到的第一个实例-并且将通过安装进行系统化!