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

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
Товарищи, я долго и упорно тестировал разные варианты настроек для изображения товара, но не смог добиться нужного результата. Поэтому решил спросить у гуру JoomShopping  !!!???!!!

Я не хочу чтобы JoomShopping растягивал изображение, если оно меньше заданных параметров.
Если же оно больше, то должно уменьшаться в соответствии с выбранным способом масштабирования (Resize type).

Сейчас в настройках «Product image width» установлено значение ширины 1920px (высота задана как 0).
При загрузке изображения размером, скажем, 500х500, оно будет растянуто до размеров 1920х1920.
Причём это произойдёт при любых вариантах «Resize type» (Cut, Fill или Stretch).
Можно ли добиться того, что я описал выше, или это не возможно?
*

kit2m2

  • Живу я здесь
  • 3346
  • 273 / 0
  • Беру сайты на полное сопровождение
Ненужно устанавливать Ширину оригинального изображения и Высоту оригинального изображения!
Должны быть везде нули. Тогда какую картинку загрузите, такая и будет.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
kit2m2, спасибо, что отозвались!
В данный момент для оригинального изображения именно нули и установлены, что для ширины что для высоты.

У нас есть четрые варианта изображений, которые сохраняются после загрузки:
- Category thumbnail
- Product thumbnail
- Product image
- Original image

Я говорю именно о Product image.

Безусловно, я могу выводить оригинальное изрображение вместо отмасштабированного Product image.
Но тогда изображения могут быть просто гигантскими, если в оригинале фотография товара не маленькая, а какая нибудь 3000х2000.
*

sivers

  • Живу я здесь
  • 2587
  • 359 / 0
Как вариант - добавить в макете проверку размера и давать соотв. класс - большая картинка или маленькая. Масштабировать потом цсс-ом по классу.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
sivers, спасибо за ответ! Мне в голову уже пришла мысль: сравнивать оригинальное изображение с отмасштабированным, и если оригинал меньше нового изображения, то показывать его. Единственное: не понимаю пока, на сколько ресурсо затратна такая операция (ведь её придётся делать при каждой загрузке страницы).

P.S.: На официальном форуме JoomShopping'а админ ответил, что нет возможности сделать то, о чём я говорю. Т.е. изображения всегда будут upscaled (увеличенные) в описанной мною ситуации.
*

sivers

  • Живу я здесь
  • 2587
  • 359 / 0
Кастмно все можно сделать. В т.ч. никто не мешает вам в момент загрузки фото вытаскивать его размер и записывать в БД (или в текстовый файл рядом с фото) и потом читать размеры оттуда, а не из картинки брать.

Админ, вероятно, имел в виду, что штатными средствами компонента этого сделать нельзя.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

goga_pgasovav

  • Захожу иногда
  • 444
  • 6 / 0
  • Внимательный джумловод
Кастмно все можно сделать. В т.ч. никто не мешает вам в момент загрузки фото вытаскивать его размер и записывать в БД (или в текстовый файл рядом с фото) и потом читать размеры оттуда, а не из картинки брать.

Админ, вероятно, имел в виду, что штатными средствами компонента этого сделать нельзя.

Да, админ сказал, что «there is no such possibility».
Не то, чтобы это экстренно необходимая функция, но буду пробовать её реализовать.
Мысли уже есть. Спасибо за подсказки!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Не отображать блок сопутствующих товаров если их всех нет в наличии

Автор goga_pgasovav

Ответов: 3
Просмотров: 1413
Последний ответ 20.03.2023, 19:13:28
от goga_pgasovav
Что если магазин - не основная страница сайта?

Автор Alex_gs

Ответов: 5
Просмотров: 975
Последний ответ 15.10.2022, 13:43:26
от Alex_gs
Присвоить класс div если количество товара равно 0)

Автор buto

Ответов: 18
Просмотров: 1066
Последний ответ 03.01.2022, 11:15:07
от buto
Как проверить, есть ли у товара фото (условие) в шаблоне list_products/product?

Автор goga_pgasovav

Ответов: 15
Просмотров: 921
Последний ответ 14.10.2021, 14:23:11
от goga_pgasovav
[Решено] Спрятать цену товара, если количество 0

Автор dron

Ответов: 12
Просмотров: 968
Последний ответ 06.09.2019, 12:28:36
от dron