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

RomanA

  • Захожу иногда
  • 111
  • 0 / 0
Имеем:
Joomla 3.9.25.
Пункт меню выводит материалы одной из категорий в виде блога.
Этот пункт содержит подпункты, каждый из которых имеет привязку к своему материалу этой категории.
Задача:
Нужно, чтобы была возможность пользуясь подпунктами основного меню перемещаться по блогу категории.

Возможно такая схема и не заработает. Можно создать единый материал вместо блога (по типу лэндинга) или ещё как-нибудь, но главное - чтобы была возможность пользоваться навигацией по этой странице посредством основного меню (а не вставленного через модуль непосредственно в этот длинный материал дополнительного меню или ещё как-то).
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
вы бы хоть или скрином или ссылкой показали что имеете и что требуетсяя так понял что типа перемещение к статьям в блоге как по якорямили не прав?
индивидуальная помощь: @SetAlexx
*

RomanA

  • Захожу иногда
  • 111
  • 0 / 0
Именно так! Через основное меню.
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
тут только править шаблон вывода блогаоборачивать в div с id например id материаламенюшку делать ссылками #idматериала
индивидуальная помощь: @SetAlexx
*

RomanA

  • Захожу иногда
  • 111
  • 0 / 0
Re: Навигация внутри Блога категории
« Ответ #4 : 12.04.2022, 10:48:01 »
Это который из "components\com_content\views\category\tmpl"?
Но если идти этим стандартным путём, то и шаблон вывода меню, наверное, как-то надо править? Там ведь тоже отсутствует возможность указать id для ссылки...
Если не сложно, подскажите, пожалуйста, какие конкретно правки нужны.
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
переопределите шаблон блога категории в свой шаблонпо меню нет никаких проблемтип - url#idматериала
индивидуальная помощь: @SetAlexx
*

RomanA

  • Захожу иногда
  • 111
  • 0 / 0
переопределите шаблон блога категории в свой шаблон
Да, это понятно, непонятно, как добавить id в этот фрагмент (не силён в РНР):

<div class="article<?php echo $item->state == 0 ? ' system-unpublished' : null; ?>"
               itemprop="blogPost" itemscope itemtype="https://schema.org/BlogPosting">
               <?php
               $this->item = & $item;
               $this->item->leading = true;
               echo $this->loadTemplate('item');
               ?>
            </div>

по меню нет никаких проблемтип - url#idматериала
Да, с этим, думаю, разберусь...
*

RomanA

  • Захожу иногда
  • 111
  • 0 / 0
Спасибо за подсказки!

<div id="<?php echo $item->id ?>" ...

... и прямые ссылки из меню типа: //http......#<нужный id>

Вроде, так работает...

А чтобы страница плавно прокручивалась до нужного якоря, в css
scroll-behavior: smooth;
« Последнее редактирование: 12.04.2022, 15:44:03 от RomanA »
*

marksetter

  • Завсегдатай
  • 1045
  • 40 / 0
именно так
индивидуальная помощь: @SetAlexx
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Стоит ли ставить плагин rel="canonical" на Joomla 3

Автор azm1n

Ответов: 2
Просмотров: 743
Последний ответ 09.05.2025, 12:39:18
от azm1n
Перенести описание категории вниз страницы

Автор jimka

Ответов: 1
Просмотров: 941
Последний ответ 18.07.2024, 08:02:46
от Vastriet
Сортировка по доп. полям на странице списка категории

Автор revil

Ответов: 4
Просмотров: 1446
Последний ответ 02.06.2024, 13:42:45
от tigra-uki
Поиск в Материал- Блог категории

Автор mag_num83

Ответов: 1
Просмотров: 763
Последний ответ 14.09.2023, 20:36:34
от beliyadm
reCapcha во всплывающем окне - "Ошибка защиты от спама"

Автор Dannik

Ответов: 12
Просмотров: 2410
Последний ответ 14.09.2023, 18:59:24
от all_zer