0

我在使用 joomla 2.5.11 时遇到了问题。显示了一些通知,并且在主页中,除了这些通知之外,德德玛特没有显示任何内容。

注意:未定义的属性:C:\xampp\htdocs\joonla\Joomla_2.5.11-Stable-Full_Package\components\com_virtuemart\views\categories\view.html.php 中的 TableCategories::$virtuemart_id 第 57 行

严格标准: VirtueMartModelMedia::store() 的声明应与 C:\xampp\htdocs\joonla\Joomla_2.5.11-Stable-Full_Package\administrator\components\com_virtuemart\models\media 中的 VmModel::store() 的声明兼容.php 在第 435 行

严格标准:JParameter::loadSetupFile() 的声明应与 C:\xampp\htdocs\joonla\Joomla_2.5.11-Stable-Full_Package\libraries\joomla\html\parameter.php 中的 JRegistry::loadSetupFile() 的声明兼容在线 512

严格标准:在第 82 行从 C:\xampp\htdocs\joonla\Joomla_2.5.11-Stable-Full_Package\components\com_virtuemart\views\categories\view.html.php 中的空值创建默认对象

4

1 回答 1

0

在确保您运行的是最新版本的 Virtuemart 之后,如果您想修复这些警告(尽管请记住,它们只是警告,如果 Virtuemart 没有修复它们,它们可能会在您更新时再次出现),然后您应该遵循每个错误给出的简单说明:

Notice: Undefined property: TableCategories::$virtuemart_id in x.php on line y

这意味着y在文件的行上调用了一个属性x。在这种情况下,您应该找到TableCategories类的实例化位置并添加一个 default $virtuemart_id

Strict Standards: Declaration of VirtueMartModelMedia::store()
should be compatible with that of VmModel::store() in x.php on line y

这意味着两个相关类的两个函数声明的声明方式不同。例子:

function Parent::a($param1, $param2) {}
function Child::a($param1) {}

很明显,孩子也应该有一个$param2参数传递给它。如果你想改变这样的事情,你应该知道对函数有各种调用,显然没有(例如)第二个参数。处理这个问题的最好方法,因为你想摆脱错误,是让子调用等于父调用,但要确保有一个默认值,$param2 = 0以避免将来出现错误。

Strict Standards: Declaration of JParameter::loadSetupFile()
should be compatible with that of JRegistry::loadSetupFile() in x.php on line y

如果你想要我的意见,请避免这个。一般来说,最好不要使用 Joomla 代码,除非您really确定自己想要做什么,并且这是唯一的方法。不过,请注意 Joomla 2.5 有更新,以防您仍在使用 2.5.11。

Strict Standards: Creating default object from empty value in x.php on line y

对于最后一个错误,请阅读

于 2013-09-30T07:14:04.307 回答