Strict Standards: Non-static method JSite::getMenu() should not be called statically

牧云@^-^@ 提交于 2019-11-28 03:12:13

问题


I'm a newbee in joomla. When I change my template to other like http://www.joomla24.com/Joomla_3x_Templates/Joomla_3x_Templates/Oliverio_Lite.html

I'm getting the following error

Strict Standards: Non-static method JSite::getMenu() should not be called statically, assuming $this from incompatible context in ..\xampp\htdocs\joomla\templates\oliveriolite\index.php on line 91

Strict Standards: Non-static method JApplication::getMenu() should not be called statically, assuming $this from incompatible context in ..\xampp\htdocs\joomla\includes\application.php on line 569

回答1:


It's quite simple. Your template calls a function named getMenu() statically. Meaning the call looks like this: $app::getMenu(). But it should look like this: $app->getMenu(). The variable name ($app) doesn't matter, the colon vs arrow matters.

The correct way to get the menu is:

$app = JFactory::getApplication();
$menu = $app->getMenu();

or even shorter:

$menu = JFactory::getApplication()->getMenu();


来源:https://stackoverflow.com/questions/15922391/strict-standards-non-static-method-jsitegetmenu-should-not-be-called-static

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!