Joomla 3.8 с PHP 7 проблем - PullRequest
       2

Joomla 3.8 с PHP 7 проблем

0 голосов
/ 25 октября 2018

Я сейчас нахожусь в принудительном переходе с PHP 5.6 на 7.1 (или 7.2, оба варианта) для моего сайта.У меня есть два веб-сайта, один работает нормально, но другой не работает на 7.1 или .2.

Я получаю следующие сообщения об ошибках:

[Thu Oct 25 09:25:21.985120 2018] [:error] [pid 12006] PHP Deprecated: Non-static method Joomla\\CMS\\Application\\CMSApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/public/sites/www.modderaandebanden.nl/libraries/src/Application/SiteApplication.php on line 275
[Thu Oct 25 09:25:21.985130 2018] [:error] [pid 12006] PHP Strict Standards: Only variables should be assigned by reference in /home/public/sites/www.modderaandebanden.nl/templates/siteground-j16-1/templates.php on line 15

У меня проблемавсе мои страницы (все вокруг один и тот же шаблон).Это то, что я получаю, когда открываю templates.php шаблона Siteground J16-1, который я сейчас использую:

<?if( $sg == 'banner' ):?>

    <?php if (JRequest::getVar('view') == 'frontpage'):?>

    <!-- SIDE BEGIN --><!-- SIDE END -->

    <?php endif?>

<?else:?>

    <?php echo $app->getCfg('sitename'); ?>, Powered by <a href="http://joomla.org/" class="sgfooter" target="_blank">Joomla!</a>



    <?php $menu = &JSite::getMenu();

    if ($menu->getActive() == $menu->getDefault()) :?>

        <!-- FOOTER BEGIN --><a href="http://www.siteground.com/cpanel-hosting.htm" target="_blank">Hosting with cPanel by SiteGround</a><!-- FOOTER END -->

    <?php endif ?>



<?endif;?>

Пожалуйста, дайте мне знать, если это может решить проблему.Прошу прощения за мою глупость ... :-D

www.modderaandebanden.nl - мой сайт.

Кто-нибудь может мне сказать, что здесь происходит?Это шаблон, который не подходит для использования с PHP 7?

Заранее спасибо

1 Ответ

0 голосов
/ 29 октября 2018

Это предупреждение и уведомления.Это не ошибки!

Обычно вы можете скрыть это: Конфигурация Joomla> Вкладка «Сервер»> Отчет об ошибках - установите его на минимум или не указывайте.

Также вы можете изменить этот параметр в php сервераКонфигурационный файл .ini или установите его в файле php.ini в корневой папке вашего сайта (возможно только на некоторых серверах).

Но, наконец, вы должны исправить свой код, чтобы использовать новые методы Joomla Framework.Например, чтобы получить меню, используйте:

// Get Joomla! instance
$jAp = JFactory::getApplication();
// Get variables
$menu = $jAp->getMenu();

И посмотрите на это для Get vars: https://docs.joomla.org/Retrieving_request_data_using_JInput

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...