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

likrion

  • Давно я тут
  • 750
  • 129 / 2
Решение для тех кто хочет в тизере отображать превью видео с youtube


в файле media/zoo/elements/media/media.php

находим

Код: php
return '<iframe src="'.$source.$autoplay.$wmode.'"'.$width_attr.$height_attr.'></iframe>';

и заменяем на

Код: php
if (!function_exists("get_youtube_id")) {
function get_youtube_id($url){
  if (strpos( $url,"v=")!== false){
  return substr($url, strpos($url, "v=") + 2, 11);
  }
  elseif(strpos( $url,"embed/")!== false){
  return substr($url, strpos($url, "embed/") + 6, 11);
  }
}
}

$full    =  '<iframe src="'.$source.$autoplay.$wmode.'"'.$width_attr.$height_attr.'></iframe>';
$teaser  =  '<a href="' . $this->app->route->item($this->_item). '" title="'.$this->_item->name.'"><img src="http://img.youtube.com/vi/'.get_youtube_id($source).'/sddefault.jpg" height="auto" width="auto" alt="'.$this->_item->name.'"/></a>';
$task    = JFactory::getApplication()->input->getWord('task', '');
return ($task == 'item')?  $full :  $teaser;

все... теперь в тизере вместо видео с youtube будет фото превью как ссылка к итему

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

# исправлена ошибка  множества итемов на одной странице
« Последнее редактирование: 29.10.2013, 17:45:40 от likrion »
R331474010295
*

Spirit

  • Захожу иногда
  • 57
  • 6 / 1
sddefault.jpg не всегда работает :)

0.jpg итог у меня.
*

likrion

  • Давно я тут
  • 750
  • 129 / 2
попробуйте в предложенном коде заменить sddefault.jpg на default.jpg

доступные варианты

  • 0.jpg
  • 1.jpg
  • 2.jpg
  • 3.jpg
  • default.jpg
  • mqdefault.jpg
  • hqdefault.jpg
  • sddefault.jpg
  • maxresdefault.jpg
« Последнее редактирование: 29.10.2013, 20:18:21 от likrion »
R331474010295
*

Spirit

  • Захожу иногда
  • 57
  • 6 / 1
Стандартное изображение (изображение по умолчанию, которое может выбрано как одно из следующих 1.jpg, 2.jpg, 3.jpg) [120*90]:

   

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

Следующие три изображения Google создает путем деления видео на три равные части, и условно-случайным образом выбирает по кадру. Эти изображения часто используют на каких либо видео-порталах. Как один из методов применения: когда при наведении на видео, пользователь видит череду сменяющихся кадров, и ощущает, что быстро и вкратце посмотрел видео:).

    [120*90]
    [120*90]
    [120*90]

Полный размер (часто этот размер изображения совпадает с default.jpg) [480*360]:

   

Среднее качество изображения [320*180]:

   

Высокое качество изображения [480*360]:

   

Максимальное разрешение изображения(встречается не во всех видео и разрешение меняется) [1920*1080]:

   
*

Театрал

  • Захожу иногда
  • 232
  • 7 / 0
Спасибо большое!

Очень помогло!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Выводим теги из Zoo в виде пунктов меню

Автор ma1efic

Ответов: 8
Просмотров: 6211
Последний ответ 08.12.2020, 23:25:48
от radiant
[Элемент] archiv - перенос элемента в архивную категорию по окончанию публикации( и ее продление )

Автор likrion

Ответов: 37
Просмотров: 6432
Последний ответ 22.10.2015, 08:13:12
от nick71
[Решено] Как упорядочить приложения zoo во вкладках?

Автор aniangeless

Ответов: 2
Просмотров: 1381
Последний ответ 24.03.2015, 17:27:01
от aniangeless
[Решено] ХАК Режима Доверия в "business directory" (ZOO 2.3)

Автор Dr_Satyr

Ответов: 16
Просмотров: 7200
Последний ответ 18.02.2015, 13:31:47
от xavier13
Увеличение картинки в full

Автор rk3dnp

Ответов: 3
Просмотров: 1222
Последний ответ 22.04.2014, 21:38:48
от rk3dnp