Новости 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 Ответов
  • 8241 Просмотров
*

Роман1974

  • Новичок
  • 4
  • 0 / 0
После восстановления сайта из резервной копии, при входе на главную страницу выдает ошибку

Fatal error: Class 'JCache' not found in /sata1/home/users/hairprofi/www/сайт/libraries/joomla/factory.php on line 208

В админку войти можно, но при выборе общих настроек сайта выдает

Fatal error:Class 'JCache' not found in /sata1/home/users/hairprofi/www/сайт/administrator/components/com_config/controllers/application.php on line 179

Восстановление выполняла служба поддержки хостинга.Когда я сообщил об ошибках, порекомендовали обратиться к разработчику сайта, а контакты разработчика давно неактуальны. Google и Яндекс ответа не дали. 

Подскажите, как максимально просто решить эту проблему? Я, мягко сказать начинающий пользователь.
*

evgen777

  • Давно я тут
  • 657
  • 62 / 2
Разработка, доработка расширений для Joomla!
*

Роман1974

  • Новичок
  • 4
  • 0 / 0
При попытке очистить кэш через админку, в графе группа кэширования нет ни одной записи. Также заметил, что папки сайт/  cache, сайт/administrator/cache и.т.д. на сервере пустые, а в дистрибутиве Joomla в этих папках есть HTML и php файлы. Может дело в этом?
*

evgen777

  • Давно я тут
  • 657
  • 62 / 2
значит сам файлы повредились при заливе на хостинг  из бэкапа!
перезалейте их или замените из дистрибьютива Joomla!
какая версия джумлы?
Разработка, доработка расширений для Joomla!
*

Роман1974

  • Новичок
  • 4
  • 0 / 0
*

Роман1974

  • Новичок
  • 4
  • 0 / 0
Спасибо. Добавил в папки сайт/cache, administrator/cache, сайт/libraries/joomla/cache файлы из дистрибутива Joomla, и заработало.
*

happy83

  • Новичок
  • 8
  • 0 / 0
Здравствуйте.
Вот тоже восстановил сайт из резервной копии  теперь когда открываю сайт выдает такую ошибку
"Not Found

The requested URL /cgi-bin/php5.2.cgi/index.php was not found on this server."
Как с этим справиться?
*

happy83

  • Новичок
  • 8
  • 0 / 0
Что ни кто ни чего не знает?
*

GapArchi

  • Захожу иногда
  • 81
  • 7 / 2
Цитировать
Fatal error: Class 'JCache' not found in (абсолютный путь)/libraries/joomla/factory.php on line 265
Вот такая ошибка была. Оказалось, что коллега в спешке, допустил ошибку при написании файла .gitignore
Код
!.gitignore
/configuration.php
cache/
***
в результате в репозиторий не записалась папка /libraries/joomla/cache со всем её содержимым.
Будьте внимательны!
*

Igoritaly

  • Давно я тут
  • 659
  • 2 / 0
значит сам файлы повредились при заливе на хостинг  из бэкапа!
перезалейте их или замените из дистрибьютива Joomla!
какая версия Joomla?
У меня ругают тот же файл, но видимо проблема совсем другая:
Fatal error: Class 'JSession' not found in /home/mysite/public_html/libraries/joomla/factory.php on line 598
- Joomla 3.5.1
- Сайт перезаписан дистрибутивом
- В админку не заходит
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Перенос сайта на новый домен

Автор kirill-juk

Ответов: 2
Просмотров: 3134
Последний ответ 11.12.2024, 17:54:19
от Alisaaga26
При переносе на новый хостинг Ошибка 500

Автор Ecspert

Ответов: 11
Просмотров: 4110
Последний ответ 14.08.2022, 14:04:28
от Ecspert
Ошибка при переходе с 1.5 на 2.5 не могу найти откуда идет ошибка помогоите пожалуйста

Автор upgr561

Ответов: 3
Просмотров: 4949
Последний ответ 31.05.2020, 16:00:36
от voland
При попытке войти в админку 404 ошибка компонента - Joomla 1.5: Общие вопросы

Автор omezik

Ответов: 1
Просмотров: 3628
Последний ответ 30.08.2019, 16:10:56
от voland
Не заходит в кабинет администратора - ошибка 500

Автор nestandart

Ответов: 4
Просмотров: 4503
Последний ответ 28.03.2019, 12:01:57
от voland