0 Пользователей и 1 Гость просматривают эту тему.
  • 89 Ответов
  • 10178 Просмотров
*

sivers

  • Завсегдатай
  • 1093
  • 140 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #60 : 04.03.2019, 14:29:02 »
Если используете в шаблоне запись, похожую на это:
Код
$menu = JApplication::getMenu();
то попробуйте заменить ее на такую:
Код
global $app;
$menu = $app->getMenu();
На связи в телеге @sivers
*

NewUsers

  • Завсегдатай
  • 1638
  • 146 / 0
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

oleg8800

  • Захожу иногда
  • 96
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #62 : 04.03.2019, 14:52:14 »
ОГРОМНОЕ Вам спасибо! Все получилось)))
*

shaen8032002

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #63 : 12.07.2019, 13:38:09 »
Добрый день помогите
Шаблон SJ_Revo  после перехода на 7.1
выдает ошибку   Undefined variable: menu_arrow in /home/s/shaen8cv/umorodnako.ru/public_html/templates/sj_revo/menusys/ytmenu.php on line 279


Вот кусок кода
   if (isset($menu_image) && $menu_image!='-1' && !empty($menu_image)){
         
            
            
            
            $menu_image_url = JURI::base(true). "/{$menu_image}";
            $menu_image_open = "<span class=\"menu-icon\">";
            $menu_image_child= ( (count($this->_child) > 1 || count($this->loadModules() )))? " <img src=\"{$menu_image_url}\" alt=\"\" />" : "";
            $menu_image_child .= $menu_arrow  ;
            $menu_image_close= "</span>";
         } else {
            $menu_arrow ="";
            

            $menu_image_open  = "";
            $menu_image_child = $menu_arrow  ;
            $menu_image_close = "";
         }
         

*

shaen8032002

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #64 : 12.07.2019, 13:39:53 »
*

draff

  • Живу я здесь
  • 4605
  • 312 / 7
  • Ищу работу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #65 : 12.07.2019, 15:00:48 »
выдает ошибку   Undefined variable: menu_arrow in
Нужно определить $menu_arrow до ее применения.
*

shaen8032002

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #66 : 12.07.2019, 15:02:46 »
Подскажите пожалуйста как это сделать , я не сталкивалась с таким, на 7.0 все нормально работает
*

shaen8032002

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #67 : 12.07.2019, 15:03:03 »
Нужно определить $menu_arrow до ее применения.
Подскажите пожалуйста как это сделать , я не сталкивалась с таким, на 7.0 все нормально работает
*

draff

  • Живу я здесь
  • 4605
  • 312 / 7
  • Ищу работу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #68 : 12.07.2019, 16:00:28 »
Без файла, если в этом файле определяется переменная $menu_arrow, я не могу помочь.
*

voland

  • Легенда
  • 10770
  • 570 / 111
  • Эта строка съедает место на вашем мониторе
*

sivers

  • Завсегдатай
  • 1093
  • 140 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #70 : 12.07.2019, 22:13:06 »
Это что и зачем?
Эффект такой же, как от этого:
Код
$app = JFactory::getApplication();
Но говорят, что через JFactory более надежный вариант, чем через глобальную переменную.
Поэтому людям теперь рекомендую через JFactory, но сам пользуюсь вариантом через глобальную - после инициализации Joomla она всегда доступна.
На связи в телеге @sivers
*

tanya_nsp

  • Новичок
  • 24
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #71 : 10.01.2020, 18:58:49 »
После обновлений до 7,2 вылезли такие ошибки.подскажите где их исправлять. это по всему сайту так. Админка работает
*

NewUsers

  • Завсегдатай
  • 1638
  • 146 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #72 : 10.01.2020, 20:01:09 »
Ошибка здесь: JROOT/modules/mod_icemegamenu/helper.php (46 строка)
Решение здесь: Ошибка: 0 - Using $this when not in object context
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

Vit

  • Новичок
  • 15
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #73 : 29.01.2020, 19:51:29 »
Доброго времени суток всем профессионалам и Joomla гуру! Прошу оказать содействие в разрешении задачи, которую я как нуб не могу разрешить уже более трех суток. Предыстория такова. Обновил Joomla до 3.9. PHP 5.4. На сам сайт не заглядывал, поскольку пока в разработке. Затем открыл и выскочила ошибка 500 в которой было указано про константу DS -Notice: Use of undefined constant DS - assumed 'DS'  Путь указывался на com-content шаблона. Поискав в Сети, заменил. За этим последовали вот эти моменты:
Deprecated: Non-static method Joomla\CMS\Application\SiteApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/vit08/2.vit08.z8.ru/docs/plugins/system/yt/includes/site/lib/yt_template.php on line 116

Deprecated: Non-static method Joomla\CMS\Application\CMSApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/vit08/2.vit08.z8.ru/docs/libraries/src/Application/SiteApplication.php on line 275

Deprecated: Non-static method Joomla\CMS\Application\SiteApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/vit08/2.vit08.z8.ru/docs/plugins/system/yt/includes/site/lib/yt_template.php on line 116

Deprecated: Non-static method Joomla\CMS\Application\CMSApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/vit08/2.vit08.z8.ru/docs/libraries/src/Application/SiteApplication.php on line 275
И вот еще другое:
Strict Standards: Redefining already defined constructor for class YtObject in /home/vit08/2.vit08.z8.ru/docs/templates/sj_tech/menusys/ytobject.php on line 21

Strict Standards: Only variables should be assigned by reference in /home/vit08/2.vit08.z8.ru/docs/templates/sj_tech/menusys/ytmenu.php on line 205
Поскольку как я уже сказал, я далеко не асс, а слабенький "знаток", прошу очень помочь с разрешением этой проблемы, что и куда рыть и что делать. *ОХ-Х-Х*
*

robert

  • Живу я здесь
  • 4838
  • 445 / 19
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #74 : 29.01.2020, 20:55:21 »
что и куда рыть и что делать.
Приведите код в этих строках.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

draff

  • Живу я здесь
  • 4605
  • 312 / 7
  • Ищу работу
*

robert

  • Живу я здесь
  • 4838
  • 445 / 19
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #76 : 29.01.2020, 21:24:00 »
Ошибка: 0 - Using $this when not in object context
@draff Почитайте пост сначала - там совсем другая проблема.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Vit

  • Новичок
  • 15
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #77 : 29.01.2020, 21:27:14 »
Приведите код в этих строках.
это код по 116 строке yt_template.php
if(is_object(JSite::getMenu()->getActive())) $menuid = JSite::getMenu()->getActive()->id;
а это 275 SiteApplication.php
   return parent::getMenu($name, $options);
*

robert

  • Живу я здесь
  • 4838
  • 445 / 19
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #78 : 29.01.2020, 21:50:06 »
это код по 116 строке yt_template.php
if(is_object(JSite::getMenu()->getActive())) $menuid = JSite::getMenu()->getActive()->id;
Должно быть
Код
if(is_object(JFactory::getApplication()->getMenu()->getActive())) $menuid = JFactory::getApplication()->getMenu()->getActive()->id;
а это 275 SiteApplication.php
   return parent::getMenu($name, $options);
А тут непонятно, что ему не нравится.

В общем, шаблон у вас древний, его тоже надо обновить.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

draff

  • Живу я здесь
  • 4605
  • 312 / 7
  • Ищу работу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #79 : 29.01.2020, 21:54:40 »
@draff Почитайте пост сначала - там совсем другая проблема.
Зато решение аналогично .
Цитировать
Замени
Код: php

&JSite::getMenu();
Цитировать
на
Код: php

JFactory::getApplication()->getMenu();
*

Vit

  • Новичок
  • 15
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #80 : 29.01.2020, 22:07:59 »
robert спс. по крайней мере после замены строки на Вашу сайт отобразился хоть и со сдвигами но это уже шикарно:) Только строки Strict Standards остались. Шаблон действительно древний. На обновку нифига не идет, равно как и этот com_content. Уже написал в тех поддержку им, более 3-х дней молчание. Понятное дело что так-то я вкурил что разработчики Joomla константу эту убрали, а вот как победить сие чудо не для таких тупых как я. Буду юзать дальше. Спасибо Вам за помощь!
*

Vit

  • Новичок
  • 15
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #81 : 29.01.2020, 22:10:32 »
Зато решение аналогично .
В том то и дело что читал я на многих забугорных форумах такого рода действия, но я ж говорю где эти строки менять так и не втюхал, в каком файле и в какой директории. Пытался найти эти строки в компоненте - не нашел. Если не трудно поясните мне пжл, чтобы смог ткнуть сфую репу в нужном направлении :)
*

b2z

  • Глобальный модератор
  • 7043
  • 764 / 0
  • Разраблю понемногу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #82 : 31.01.2020, 10:49:23 »
Вот такое я нашёл на просторах интернета, как победить strict standards.

В файле конфигурации php.ini, а именно «error_reporting» и «display_errors» в разделе «Error handling and logging» внести изменения.

Найти:
Код
error_reporting = E_ALL | E_STRICT
display_errors = On

А после правки должно стать:
Код
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off

После этого перезагружаем веб-сервер. Однако если проблемный сайт живет на виртуальном хостинге, то непонятно каким образом можно добраться до php.ini.

Поэтому можно попробовать добавить это в .htaccess. Живет он в корне вашего сайта (нужно будет подключиться к нему по FTP), а если его там вдруг не окажется, то просто создайте его в текстовом редакторе и залейте в корень сайта.

В .htaccess надо будет добавить всего лишь две новых строчки (можно в самом низу):

Код
php_value error_reporting 30711
php_flag display_errors off
*

Гоша_Компьютерный

  • Осваиваюсь на форуме
  • 48
  • 10 / 0
  • sitogon
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #83 : 31.01.2020, 11:17:28 »
Мне кажется, скрытие ошибок такими методами (путем скрытия отображения ошибок) - это неправильно и плохо. Нужно исправлять непосредственно код.
*

tanya_nsp

  • Новичок
  • 24
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #84 : 06.02.2020, 00:47:19 »
Ошибка здесь: JROOT/modules/mod_icemegamenu/helper.php (46 строка)
Решение здесь: Ошибка: 0 - Using $this when not in object context

Спасибо, завтра попробую обновить заново и исправить ошибку. Дай Бог получится, а то я откатила назад к более старой версии
*

voland

  • Легенда
  • 10770
  • 570 / 111
  • Эта строка съедает место на вашем мониторе
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #85 : 06.02.2020, 03:11:02 »
Вот такое я нашёл на просторах интернета, как победить strict standards.

В файле конфигурации php.ini, а именно «error_reporting» и «display_errors» в разделе «Error handling and logging» внести изменения.

Найти:
Код
error_reporting = E_ALL | E_STRICT
display_errors = On

А после правки должно стать:
Код
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off

После этого перезагружаем веб-сервер. Однако если проблемный сайт живет на виртуальном хостинге, то непонятно каким образом можно добраться до php.ini.

Поэтому можно попробовать добавить это в .htaccess. Живет он в корне вашего сайта (нужно будет подключиться к нему по FTP), а если его там вдруг не окажется, то просто создайте его в текстовом редакторе и залейте в корень сайта.

В .htaccess надо будет добавить всего лишь две новых строчки (можно в самом низу):

Код
php_value error_reporting 30711
php_flag display_errors off
Так это ж всё есть в админке - Настройки - уровень ошибок
*

tanya_nsp

  • Новичок
  • 24
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #86 : 06.02.2020, 12:57:43 »
Ошибка здесь: JROOT/modules/mod_icemegamenu/helper.php (46 строка)
Решение здесь: Ошибка: 0 - Using $this when not in object context
Не помогло. Обновилась до 3,9 и PHP до 7,2 исправила в файле helper.php, но сайт выдает ошибку все равно. Грузится только админка. На сайте одна строчка Error: Call to undefined method RuntimeException::get(): Error decoding JSON data: Syntax error
Меняла шаблон на стандартный, все равно тоже самое
*

b2z

  • Глобальный модератор
  • 7043
  • 764 / 0
  • Разраблю понемногу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #87 : 06.02.2020, 17:32:09 »
Цитировать
Не помогло. Обновилась до 3,9 и PHP до 7,2 исправила в файле helper.php, но сайт выдает ошибку все равно. Грузится только админка. На сайте одна строчка Error: Call to undefined method RuntimeException::get(): Error decoding JSON data: Syntax error
Пробуйте отключить модули по очереди.
*

tanya_nsp

  • Новичок
  • 24
  • 0 / 0
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #88 : 06.02.2020, 18:29:51 »
Пробуйте отключить модули по очереди.

Отключила модуль icemegamenu и плагин JB Library. Сайт заработал, только без меню. Потом в icemegamenu в файле helper.php в 3 местах поменяла на JFactory::getApplication()->getMenu(); и дописала "static" к function buildXML($params). Все заработало! Ура
*

b2z

  • Глобальный модератор
  • 7043
  • 764 / 0
  • Разраблю понемногу
Re: Ошибка: 0 - Using $this when not in object context
« Ответ #89 : 07.02.2020, 10:20:33 »
Отключила модуль icemegamenu и плагин JB Library. Сайт заработал, только без меню. Потом в icemegamenu в файле helper.php в 3 местах поменяла на JFactory::getApplication()->getMenu(); и дописала "static" к function buildXML($params). Все заработало! Ура
Ну вот и отлично.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Обновил php до 7.2, 0 - Using $this when not in object context

Автор RazarioAgro

Ответов: 9
Просмотров: 480
Последний ответ Сегодня в 17:20:20
от draff
Ошибка при установке Joomla на локальном сервере

Автор borro

Ответов: 4
Просмотров: 169
Последний ответ 04.04.2020, 14:37:32
от borro
Ошибка при установке любых quickstart

Автор Shamir

Ответов: 7
Просмотров: 2619
Последний ответ 18.03.2020, 12:25:23
от vasmed
Ошибка при переходе на 7.2

Автор Дмитрий3838

Ответов: 2
Просмотров: 225
Последний ответ 12.03.2020, 17:43:41
от gartes
При переносе на хостинг ошибка Fatal error

Автор spiroksi

Ответов: 12
Просмотров: 467
Последний ответ 22.02.2020, 22:31:41
от spiroksi