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

newadam

  • Захожу иногда
  • 62
  • 0 / 1
Для тех, кто использует T3 Framework от компании JoomlArt.com!

В чём ошибка
Этот фреймворк (с версии 2.7.0) может формировать некоторые типы страниц с неправильными структурированными данными согласно словарю https://schema.org/Article. Ниже часть кода страницы иллюстрирующая ошибку:
Код
<div class="item-page mainpage" itemscope="" itemtype="https://schema.org/Article">
   <!-- Article -->
   <article itemscope="" itemtype="http://schema.org/Article">
Например, если вы используете шаблон T3_BS3_Blank от Joomlart, то при проверке в Google правильности структурированных данных вы получите ошибку. Происходит это из-за лишнего @type Article, для которого не будет описания обязательных свойств (author, datePublished, headline, image, publisher).

Исправление ошибки
В файле:
plugins/system/t3/base-bs3/html/com_content/article/default.php
Заменяем строку под номером 47:
Код
<div class="item-page<?php echo $this->pageclass_sfx; ?>" itemscope itemtype="https://schema.org/Article">
На  строку:
Код
<div class="item-page<?php echo $this->pageclass_sfx; ?>">
Дополнительно
В этом же файле, в строке 53 можно заменить протокол http на https:
Код
<article itemscope itemtype="https://schema.org/Article">
Это на будущее, когда в словарях Schema.org значения «Canonical URL» изменит протокол на https.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сохранить не удалось из-за ошибки: Содержимое превышает допустимые лимиты

Автор R31rus

Ответов: 21
Просмотров: 4969
Последний ответ 27.03.2024, 16:46:13
от Gorilla
jos-Error: Материал не найден вместо 404 ошибки

Автор bugmenot

Ответов: 4
Просмотров: 1292
Последний ответ 10.01.2023, 11:32:11
от Mick_20
Ошибки при переходе на PHP 8.2

Автор Dram

Ответов: 6
Просмотров: 1410
Последний ответ 30.12.2022, 13:44:32
от Dram
Ошибки при загрузке страниц сайта

Автор web_signal

Ответов: 3
Просмотров: 718
Последний ответ 08.11.2022, 20:26:13
от marksetter
Youtube грузит сайт и создает ошибки

Автор Andre100

Ответов: 2
Просмотров: 767
Последний ответ 02.09.2022, 13:48:30
от Andre100