После обновления Джумла до 3.6.4 появился белый экран и error_log пишет такое: [17-Nov-2016 00:26:00 Europe/Moscow] PHP Strict Standards: Non-static method JApplicationSite::getMenu() should not be called statically in /home/.../plugins/system/helix/html/mod_menu/default_component.php on line 24 [17-Nov-2016 00:26:00 Europe/Moscow] PHP Strict Standards: Non-static method JApplicationCms::getMenu() should not be called statically in /home/.../libraries/cms/application/site.php on line 272 [17-Nov-2016 00:26:00 Europe/Moscow] PHP Strict Standards: Only variables should be assigned by reference in /home/.../plugins/system/helix/html/mod_menu/default_component.php on line 24 Строчка default_component.php on line 24: Код (PHP): $menu = &JSite::getMenu(); Фрагмент кода site.php on line 272: Код (PHP): public function getMenu($name = 'site', $options = array()) { $menu = parent::getMenu($name, $options); return $menu; } Подскажите, как правильно переписать этот код?
Сделала, пишет теперь: Fatal error: Cannot make non static method JApplicationCms::getMenu() static in class JApplicationSite in /home/.../libraries/cms/application/site.php on line 862 Строчка 862 это закрывающая фигурная скобка: Код (PHP): final class JApplicationSite extends JApplicationCms { } В фигурных скобках много-много функций, и static function getMenu в том числе
Тогда откати назад. Еще попробуй убрать & Код (PHP): $menu = JSite::getMenu(); А точно белый экран из-за ошибок Notice ? Может временно отключить показ ошибок в .htaccess? Код (PHP): php_value error_reporting 30711 php_flag display_errors off п.с. Сразу не откатывай, попробуй еще и родительский метод объявить статик Код (PHP): [17-Nov-2016 00:26:00 Europe/Moscow] PHP Strict Standards: Non-static method JApplicationCms::getMenu() should not be called statically in /home/.../libraries/cms/application/site.php on line 272
у меня 2 ошибки PHP Deprecated: Non-static method JApplicationSite::getMenu() should not be called statically, assuming $this from incompatible context in /plugins/system/yt/includes/site/lib/yt_template.php on line 116 Код (PHP): 116 if(is_object(JFactory::getApplication()->getMenu()->getActive())) $menuid = JSite::getMenu()->getActive()->id; JSite::getMenu(); поменял на JFactory::getApplication()->getMenu() вроде сработала PHP Deprecated: Non-static method JApplicationCms::getMenu() should not be called statically, assuming $this from incompatible context in /libraries/cms/application/site.php on line 272 272 строку пытался сделать так же сайт вырубает 502 ошибка или 500. Ты исправил данную ошибку?