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

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
Всем привет! Столкнулся с дурацкой проблемой при выводе статей в компоненте ZOO, при просмотре списка доступных статей в категории, текст статьи показывается целиком http://prntscr.com/3x1uo9, а мне необходимо чтобы было лишь её описание в размере от 100 до 200 символов, и уж только потом кнопка подробнее. Весь день бьюсь с компонентом, до этого стояла другая версия zoo и было все нормально. Подскажите пожалуйста как сократить вывод содержания статьи! В настройках нашел только количество статей на одной странице, пытался разобраться в типах, но все безуспешно.
« Последнее редактирование: 27.06.2014, 19:33:27 от Spaik »
*

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
Поправьте кто-нибудь, если я задал корявый вопрос, или если есть действительно ответ на этот вопрос, то подскажите как быть.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Создание сайтов, шаблонов, помощь в решении проблем.
*

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
Где это найти http://prntscr.com/3xahg7, в папке HTML еще много файлов, извините я пока только учусь.
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
media/zoo/application/blog(или какое там у вас приложение)/templates/используемый шаблон приложения/renderer/item/teaser.php
Создание сайтов, шаблонов, помощь в решении проблем.
*

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
media/zoo/application/blog(или какое там у вас приложение)/templates/используемый шаблон приложения/renderer/item/teaser.php
Я как понимаю мне нужно сейчас вставить сюда функцию "truncate", как это сделать и куда запихнуть?
Спойлер
[свернуть]
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Думаю, сюда
Цитировать
<?php if ($this->checkPosition('content')) : ?>
   <div class="pos-content">
      <?php echo $this->renderPosition('content', array('style' => 'block')); ?>
   </div>
   <?php endif; ?>

<?php echo $this->renderPosition('content', array('style' => 'block')); ?>

Поменять на

echo JHtml::_( 'string.truncate', $this->renderPosition('content'), 400, true, false );
« Последнее редактирование: 28.06.2014, 13:29:40 от Efanych »
Создание сайтов, шаблонов, помощь в решении проблем.
*

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
Думаю, сюда
<?php echo $this->renderPosition('content', array('style' => 'block')); ?>

Поменять на

echo JHtml::_( 'string.truncate', $this->renderPosition('content'), 400, true, false );


Не читает что-то скрипт или видимо я коряво вставил http://prntscr.com/3xayw0
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
А. Ну да. Вот так надо.
Поменять на

Цитировать
<?php echo JHtml::_( 'string.truncate', $this->renderPosition('content'), 400, true, false ); ?>
Создание сайтов, шаблонов, помощь в решении проблем.
*

Spaik

  • Осваиваюсь на форуме
  • 38
  • 0 / 0
А. Ну да. Вот так надо.
Поменять на

ТЫЩУ ЛАЙКОВ! Спасибо большое, все решено.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться