Новости 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 Гость просматривают эту тему.
  • 5 Ответов
  • 1646 Просмотров
*

Юра

  • Захожу иногда
  • 56
  • 3 / 0
Извините если боян, но ответа не нашел. Не пишу в раздел "Меню..." потому что вопрос не по самой работе меню.

Есть Пункт меню, в котором есть несколько выпадающих подменю совсем разного типа (и блог категории, и конкр. статья и wrapper и т.п.):

ПУНКТ_МЕНЮ_1
ПУНКТ_МЕНЮ_2
ПУНКТ_МЕНЮ_3
--Подпункт1 (блог)
--Подпункт2 (URL)
--Подпункт3 (wrapper)
--Подпункт4 (com_content)
--Подпункт5 (...)

Так вот, если пользователь идет в в выпадающее подменю и там нажимает на него (подменю) — то честь ему и хвала. А если он нажимает на Главный ПУНКТ_МЕНЮ_3, то и не знаю что ему показать...

Хотелось бы при нажатии на данное Пункт_Меню верхнего уровня показать страницу со списком всех Подменю данного пункта Меню (сгенерированого автоматически) — пусть себе юзер выбирает куда идти дальше.

Чем такое сделать?

Спасибо.
*

Kverde3

  • Захожу иногда
  • 239
  • 19 / 3
Таких расширений и нет наверно.

Но вот так можно: установить плагина для вывода модулей в статью, и через него вывести модуль меню.
Только нужно будет создать еще одно меню (с выключенным модулем) копия подпунктов ПУНКТ_МЕНЮ_3. Скорее всего надо будет ещё над стилями поработать, чтобы в статье красиво выводилось.
Минус только один - надо две копии меню поддерживать. Если оно не часто меняется то проблемы не должно быть, тем более в менеджере копирование есть.
*

Юра

  • Захожу иногда
  • 56
  • 3 / 0
Спасибо!

Так же можна и вручную статичный контент набить, с пунктами меню и вручную обновлять, если что.

Жаль что нет готового решения. ;)
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
А чем меню-аккордеон не подходит? Функционал как раз под описанные требования, перезагрузки страницы не будет. Смотрите в JED там много таких модулей.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Жаль что нет готового решения. ;)
ну готовое решение есть, как писали выше, только никаких плагинов там не нужно.
Создаете отдельное меню в нем делаете пункты меню (псевдонимы на эти подменю) публикуете это меню в определенной позиции.
Прописываете условие в шаблоне типа такого
Код
<?php $itemid =JRequest::getInt('Itemid');
if ($itemid == 'здесь пишем ID ПУНКТ_МЕНЮ_3' ) { ?>
<jdoc:include type="modules" name="позиция где был опубликован второй модуль" />
<?php } else { ?>
<jdoc:include type="component" />
<?php } ?>

*

Юра

  • Захожу иногда
  • 56
  • 3 / 0
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 7962
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 3355
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 4886
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 23084
Последний ответ 20.09.2019, 16:54:01
от beliyadm
Как в ARI Ext Menu добиться работы параметра "Показать в меню"?

Автор vasmed

Ответов: 1
Просмотров: 3610
Последний ответ 01.03.2019, 11:12:18
от vasmed