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

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Нужно вывести товары из категорий в родительскую, но только в админке. Делал ли кто такое? Если есть рабочее решение поделитесь пожалуйста!
*

Bacep

  • Новичок
  • 4
  • 0 / 0
Есть ли решение для VirtueMart 2.6?
в product.php
есть такой код, я так понимаю он и отвечает за вывод товаров из дочерних категорий
но настроить не получилось
решение выше не помагает
Код
if ($virtuemart_category_id > 0) {
$joinCategory = TRUE;
$where[] = ' `pc`.`virtuemart_category_id` = ' . $virtuemart_category_id;
} else if ($isSite and !VmConfig::get('show_uncat_child_products',TRUE)) {
$joinCategory = TRUE;
$where[] = ' `pc`.`virtuemart_category_id` > 0 ';
}

if ($this->product_parent_id) {
$where[] = ' p.`product_parent_id` = ' . $this->product_parent_id;
}
*

WooSuuP

  • Захожу иногда
  • 235
  • 11 / 1
  • Ословед Интерсвязи
Тему не читал, но короче суть такова. Выбрать саму категорию и подкатегорию в карточке товара и все будет работать.
*

sarmin

  • Захожу иногда
  • 69
  • 1 / 0
Цитировать
Есть ли решение для VirtueMart 2.6?
Нашел ли кто-то решение? очень нужно.
*

Bacep

  • Новичок
  • 4
  • 0 / 0
Нашел ли кто-то решение? очень нужно.
я не нашел, откатил на 2.0
*

sarmin

  • Захожу иногда
  • 69
  • 1 / 0
Ну откатить не вариант, у меня выгрузка из 1с уже заточена под эту версию. кто-то может поможет? Можно обсудить лично skype:sarminvictor
*

jumlancerCom

  • Захожу иногда
  • 52
  • 2 / 1
Можно использовать прямые запросы к БД
« Последнее редактирование: 27.05.2014, 22:28:17 от jumlancerCom »
*

jumlancerCom

  • Захожу иногда
  • 52
  • 2 / 1
Отправил обновленную инструкцию, с артикулом
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Какой смысл тут обсуждать платную инструкцию, обсуждайте её у себя. Это форум поддержки. Я сомневаюсь, что он будет существовать, если каждый за каждый пост будет плату просить.
*

jumlancerCom

  • Захожу иногда
  • 52
  • 2 / 1
Какой смысл тут обсуждать платную инструкцию, обсуждайте её у себя. Это форум поддержки. Я сомневаюсь, что он будет существовать, если каждый за каждый пост будет плату просить.

Здесь никто не просит плату за каждый пост. Кто то предлагает бесплатное решение, кто то платное. Это все "поддержка". И если человеку очень нужно то он готов и заплатить, а $2-3 за инструкцию по которой можно сделать все самому это намного меньше чем платить десятки $ программисту за работу

ps. Я здесь и бесплатно помагаю да и в принципе ни за один пост платы не беру
« Последнее редактирование: 29.05.2014, 18:40:43 от jumlancerCom »
*

fsv

  • Moderator
  • 2781
  • 410 / 2
Какой смысл тут обсуждать платную инструкцию
Вчера за ним кучу спама зачистил. Этот что-то просмотрел... поправил.

Здесь никто не просит плату за каждый пост. Кто то предлагает бесплатное решение, кто то платное.
jumlancerCom, я же вам подсказал, где и как предлагать платное решение. Надеялся, что поймете. А насчет "а где ком.раздел?"... поищите...заодно с форумом познакомитесь.
Веб-разработка: заказ. Только новая разработка.
*

alpha-helix

  • Захожу иногда
  • 80
  • 1 / 0
VirtueMart 2.6 отлично заработало решение от art-apple. Спасибо!
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
подтверждаю
VirtueMart 2.6 отлично заработало решение от art-apple. Спасибо!
а как быть, если необходимо в одной категории выводить все товары из подкатегории, а в другой категории выводить просто подкатегории?
*

MadChild

  • Захожу иногда
  • 105
  • 2 / 0
Ребят, а как можно модифицировать данный вывод и вывести по такому принципу

Название подкатегории
     Товар
     Товар
     Товар
     Товар

То есть например выводится

Спойлер
[свернуть]
*

OgecuT

  • Новичок
  • 5
  • 0 / 0
Добрый день. Спасибо art-apple. все работает.
Может кто подсказать как сделать свою сортировку для каждой категории. То есть во всех подкатегориях сортировка стоит например по "артиклу" а в родительских где выводятся все товары нужно сделать сортировку "рандом" тоесть что бы они были в перемешку... помогите с этим...
*

BananaS!

  • Новичок
  • 4
  • 0 / 0
Всех с прошедшим!
Ребят помогите реализовать товары из подкатегории в родительскую категорию. VirtueMart 2.6.14

Готов отблагодарить)))
*

BananaS!

  • Новичок
  • 4
  • 0 / 0
Разобрался. Всем спасибо!)
*

SolopoV

  • Давно я тут
  • 576
  • 16 / 0
  • зеленею...
Есть ли данное решение для Virt 3.0 и выше?
*

denis2008

  • Осваиваюсь на форуме
  • 19
  • 2 / 0
Решение от VM2.6 подходит и для VM3. В сети полно ссылок
*

SolopoV

  • Давно я тут
  • 576
  • 16 / 0
  • зеленею...
Решение от VM2.6 подходит и для VM3. В сети полно ссылок
Ну напиши пожалуйста ссылку, для VM 3.0.6 и J 3.4, не могу найти..
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
присоединяюсь, готова отблагодарить
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
никому не интересно?
*

neogeek

  • Захожу иногда
  • 196
  • 21 / 2
Решение для Joomla 3.4.1 + VirtueMart 3.0.6.4 аналогичное, даже короче немного.
Достаточно:
открыть -  /administrator/components/com_virtuemart/models/product.php
найти
Код
class VirtueMartModelProduct extends VmModel {
после этой строки добавить
Код
   
    function untreeCat($vm_catid, &$ccont){
        $db = JFactory::getDBO();
        $query = 'SELECT `category_child_id` FROM `#__virtuemart_category_categories` WHERE `category_parent_id`="'.$vm_catid.'"';
        $db->setQuery($query);
        $db->query();       
        $rows = $db->loadRowList();
        if (empty($rows))    {
            return;
        } else {           
            foreach($rows as $row) {
                array_push($ccont, $row[0]);
                $kat = $row[0];
                $this->untreeCat($kat, $ccont);               
            }
        }
    }
тут же ниже ищем
Код

        if ($virtuemart_category_id > 0) {
$joinCategory = TRUE;
$where[] = ' `pc`.`virtuemart_category_id` = ' . $virtuemart_category_id;
} else if ($isSite) {
заменяем на
Код

        if ($virtuemart_category_id > 0) {
$joinCategory = TRUE ;
$catscont = array();
        $this->untreeCat($virtuemart_category_id, $catscont);
$qkat = ' `pc`.`virtuemart_category_id` IN('.$virtuemart_category_id;
       foreach ($catscont as &$kat){
   $qkat .= ', '.$kat;
}       
$qkat .= ')';
$where[] = $qkat;
} else if ($isSite) {
все!
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
сделала, но ничего не поменялось, как и раньше сначала выходит список категорий а потом список всех товаров.
а сделать именно вот такой вывод не пполучается
Стиральные машины
     Машина 1
     Машина 2
     Машина 3

Электрические плиты
     Плита 1
     Плита 2
     Плита 3
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
все еще очень актуально
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
очень нужна помощь с проблемой описанной выше...
*

NeuroZ

  • Захожу иногда
  • 121
  • 0 / 0
  • Разработка сайтов и расширений под ключ
neogeek
Спасибо за рабочее решение!
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
нужно работающее решение, готова оплатить
*

neogeek

  • Захожу иногда
  • 196
  • 21 / 2
нужно работающее решение, готова оплатить
не рекомендую работать с этим человеком

Дело было еще в апреле.
Я взялся за доработку решения и выполнил ее. Показал работу. kira пропала. Я написал на почту и писал SMS, но ответа не получил. Через определенное время я удалил работу, при этом предупредив заказчика заранее, что если не получу ответа - удалю работу.

Администрацию форума прошу удалить минус от этого пользователя и более того дать бан за клевету.

Апрельский бекап у меня имеется, если что, могу развернуть и показать любому желающему.


« Последнее редактирование: 15.07.2015, 18:04:29 от neogeek »
*

kira

  • Захожу иногда
  • 155
  • 0 / 3
хватит врать, за работу ты взял 50% предоплаты, сорвав сроки показал невразумительное решение которое не отвечало ни ТЗ, ни логике. после чего пропал, игнорируя обращения по указанным тобою же контактам. деньги, естественно не вернул.

все переписки, и скрин перевода, конечно же могу предоставить. так что не надо людей вводить в заблуждение, таких кидал как ты, в инете немерено.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вывести слово От рядом с ценой?

Автор art22

Ответов: 4
Просмотров: 1345
Последний ответ 07.04.2024, 11:19:12
от art22
Как сделать товары в 2 колонки в моб версии?

Автор art22

Ответов: 4
Просмотров: 2253
Последний ответ 06.12.2022, 11:42:56
от art22
Как пересохранить все товары?

Автор stydent

Ответов: 1
Просмотров: 2850
Последний ответ 30.03.2022, 10:38:06
от itpremium
mod_virtuemart_product - как скрыть товары, которых нет в наличии?

Автор alexfom_16

Ответов: 40
Просмотров: 5868
Последний ответ 11.10.2021, 17:50:38
от hmr
Приоритетный Itemid для формирования ссылок на товары/категории

Автор rsn

Ответов: 2
Просмотров: 747
Последний ответ 10.03.2020, 08:21:45
от rsn