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

nadija1994

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Добрый день.
На сайте есть главная страница, она состоит из 3 блоков - верхнее меню, логотип/слайдер, блок с неосновным меню и перечнем товаров. Все блоки реализованы через модули.
В верхнем меню необходимо сделать один из пунктов меню ссылкой на якорь на главной странице. То есть на главной странице в блоке с перечнем товаров нужно сделать якорь (вроде сделала), а пункт меню должен ссылаться на этот якорь. Как это можно сделать? Причем так, чтобы когда мы находимся на главной и тыкаем в этот пункт меню, чтобы страница не перезагружалась, а просто прокручивалась до нужной позиции.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Тип пункта внешняя ссылка. Сама ссылка типа #selector
Создание сайтов, шаблонов, помощь в решении проблем.
*

nadija1994

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Тип пункта внешняя ссылка. Сама ссылка типа #selector
я сделала внешнюю ссылку "index.php#anchor" но тогда если нажать на эту ссылку на главной странице, то она перезагружается..
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
я сделала внешнюю ссылку "index.php#anchor" но тогда если нажать на эту ссылку на главной странице, то она перезагружается..
Зачем тут index.php? просто #selector
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
я сделала внешнюю ссылку "index.php#anchor" но тогда если нажать на эту ссылку на главной странице, то она перезагружается..
Если надо на текущей странице то просто #anchor.
P.S вообще якорную навигацию для конкретной старнице лучше делать либо без модуля, либо через custom HTML. пладить меню ради этого не есть торт имхо
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

nadija1994

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Зачем тут index.php? просто #selector
меню общее для всего сайта. Соответственно, с другой страницы по этой ссылке я должна попасть на главную и сразу к месту якоря. По вашему предложению это будет работать только для текущей страницы.

Если надо на текущей странице то просто #anchor.
P.S вообще якорную навигацию для конкретной старнице лучше делать либо без модуля, либо через custom HTML. пладить меню ради этого не есть торт имхо
Нет, не на текущей. Есть одно общее меню для всего сайта. И одна из ссылок ведет на главную страницу, прокручивая ее к якорю.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну тогда либо в шаблоне меню отлавливать исключение, либо в js обработчик прикручивать.
в меню вставляем длинную ссылку с якорем, которую потом обрежем скриптом, если главная страница
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
И еще - главная на правильно настроенном сайте это не index.php, а просто "/"
*

nadija1994

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
И еще - главная на правильно настроенном сайте это не index.php, а просто "/"

Спасибо, ссылка "/#anchor" работает на всех страницах!
*

Danilamk

  • Новичок
  • 2
  • 0 / 0
Здравствуйте! Подскажите, возник вопрос, как с якорного подпункта меню попасть на такой же подпункт. Просто он не переадресовывается, Вот сайт Maкпр0ф p0lи в(точка)ру.
« Последнее редактирование: 10.11.2017, 16:41:25 от Danilamk »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla! 3.9.21 Невозможно создать пункт меню

Автор edvalitto

Ответов: 1
Просмотров: 589
Последний ответ 26.03.2025, 19:26:30
от azm1n
Разные меню для мобильной и для ПК версии сайта

Автор jimka

Ответов: 7
Просмотров: 1054
Последний ответ 24.03.2025, 20:03:01
от R31rus
Проблема с меню

Автор denis_4

Ответов: 6
Просмотров: 1151
Последний ответ 07.08.2024, 14:00:43
от denis_4
Непонятная проблема с меню

Автор THE KILLERS

Ответов: 2
Просмотров: 6888
Последний ответ 25.07.2024, 16:07:39
от THE KILLERS
Как сделать картинку ссылкой на материал без Вводного изображения?

Автор OZlaim

Ответов: 0
Просмотров: 810
Последний ответ 30.05.2024, 01:28:37
от OZlaim