Новости Joomla

Совет по Joomla: $db->getQuery(true) стал устаревшим

Совет по Joomla: $db->getQuery(true) стал устаревшим

👩‍💻 Совет по Joomla: $db->getQuery(true) стал устаревшим.Раньше при создании запросов в базу данных мы всегда получали объект запроса с помощью метода

getQuery(). Если передавался параметр
$new =
true, то получали новый запрос. Если без - последний.

use Joomla\CMS\Factory;$db = Factory::getContainer()->get('DatabaseDriver');$query = $db->getQuery(new: true);// и строим запрос
Под капот Joomla 4 вошёл Joomla Framework (PHP фреймворк а-ля Laravel, Yii и т.д.), а для Joomla 5 он обновился - версия 3.4.1 вышла 6 октября 2023г. В методе фреймворка есть примечание о том, что параметр
$new, который передавался в метод
getQuery() помечен как устаревший и будет удалён в версии фреймворка 4.0.
The parameter $new is deprecated and will be removed in 4.0, use %s::createQuery() instead.В Joomla 4 версия Joomla Framework была 2.x., в Joomla 5 - 3.x. Поэтому есть предположение, что с выходом Joomla 6 обновится и версия фреймворка - станет 4.0. Поэтому для получения объекта для новых запросов следует использовать метод
createQuery(). Он уже представлен в ядре и широко используется. При этом метод
getQuery() останется, но, скорее всего, будет выполнять функцию только геттера - получения текущего запроса.
@joomlafeed#joomla #php #разработка

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

memo

  • Захожу иногда
  • 157
  • 1 / 0
Хостер перед кончиной скопировал все файлы и все базы данных сайта. Получил кучку камешков из которых надо воссоздать мозайку. Сайт делат лет 7 назад и не особо помню что и как...

Посоветуйте, плз, с чего начинать восстановление и какие этапы надо пройти? Сначала попробую на XAMPP. Если получится, то перенесу на новый хост. Может в сети есть техническое описание такой процедуры? Видимо, я не первый, кто столкнулся с такой проблемкой...
*

memo

  • Захожу иногда
  • 157
  • 1 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #1 : 09.04.2022, 14:58:13 »
Восстановил с помощью Akeeba из backup'a. Всё восстановилось нормально, но глючит один плагин:

Fatal error: 'break' not in the 'loop' or 'switch' context in C:\xampp\htdocs\portal\plugins\system\osesecure\osesecure.php on line 291

Подскажите, плз, как обойти эту ошибку или отключить глючный плагин? Похоже, что плагин OSE Secure не работает с новыми версиями PHP.
« Последнее редактирование: 09.04.2022, 15:21:30 от memo »
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #2 : 09.04.2022, 16:24:51 »
отключите через бд
потом удалите
индивидуальная помощь: @SetAlexx
*

memo

  • Захожу иногда
  • 157
  • 1 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #3 : 09.04.2022, 17:40:37 »
отключите через бд
потом удалите
Вот пытаюсь найти, где это отключается.
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #4 : 09.04.2022, 19:33:51 »
таблица extentions
индивидуальная помощь: @SetAlexx
*

memo

  • Захожу иногда
  • 157
  • 1 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #5 : 10.04.2022, 20:39:29 »
таблица extentions

Вроде, нащупал. Спасибо.
А как очистить саму БД? Заметил, что после удаления ненужного компонента, модуля или плагина его таблицы остаются в БД. Абсолютно ненужный хлам в БД. Подскажите, плз, как от него корректно избавиться?
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #6 : 10.04.2022, 21:00:45 »
удаляли через расширения?
если да то хвостов быть не должно
крайняк попробуйте кнопку исправить бд
индивидуальная помощь: @SetAlexx
*

memo

  • Захожу иногда
  • 157
  • 1 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #7 : 11.04.2022, 18:19:03 »
удаляли через расширения?
если да то хвостов быть не должно
крайняк попробуйте кнопку исправить бд
Ну, да. Всё корректно удалял.
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #8 : 11.04.2022, 19:10:44 »
ну тогда возможно хвосты остались при обновлении, что то удалили позже
индивидуальная помощь: @SetAlexx
*

memo

  • Захожу иногда
  • 157
  • 1 / 0
Re: Восстановление сайта на Joomla 3
« Ответ #9 : 13.04.2022, 22:01:35 »
ну тогда возможно хвосты остались при обновлении, что то удалили позже
Да, их осталось много. Вручную вычистил ок. 40 таблиц из БД. Похоже, что в БД ещё остались ненужные таблицы.
В какой таблице записаны связи таблиц с компонентами. модулями и плагинами?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla 3 не пускает в админку (просто перезагружается страница) (гуглил, нашёл решение, не помогло)

Автор lifelover2b

Ответов: 11
Просмотров: 3823
Последний ответ 05.06.2025, 04:48:29
от andrey222
По поводу сессий Joomla 3

Автор azm1n

Ответов: 0
Просмотров: 588
Последний ответ 25.05.2025, 09:26:17
от azm1n
Не работает мобильная версия сайта

Автор jeans

Ответов: 4
Просмотров: 661
Последний ответ 21.05.2025, 12:44:06
от jeans
Стоит ли ставить плагин rel="canonical" на Joomla 3

Автор azm1n

Ответов: 2
Просмотров: 748
Последний ответ 09.05.2025, 12:39:18
от azm1n
Вывести поля профиля Joomla

Автор romagromov

Ответов: 11
Просмотров: 1820
Последний ответ 28.04.2025, 10:25:44
от sivers