10

私はjoomlaの初心者です。テンプレートをhttp://www.joomla24.com/Joomla_3x_Templates/Joomla_3x_Templates/Oliverio_Lite.htmlのような他のものに変更すると

次のエラーが表示されます

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
4

2 に答える 2

33

とても簡単です。テンプレートは、getMenu()静的に名前が付けられた関数を呼び出します。つまり、呼び出しは次のようになります$app::getMenu()。ただし、次のようになります$app->getMenu()。変数名 ( $app) は関係ありません。コロンと矢印は関係ありません。

メニューを取得する正しい方法は次のとおりです。

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

またはさらに短い:

$menu = JFactory::getApplication()->getMenu();
于 2013-04-11T18:55:58.017 に答える