Новости Joomla

👩‍💻 Joomla User Guide - новый портал документации для пользователей.

👩‍💻 Joomla User Guide - новый портал документации для пользователей.

Обычно над сайтом работают разные специалисты: контент-менеджеры, разработчики, администраторы и т.д. Долгое время документация для пользователей была на docs.joomla.org. Там по-прежнему хранится информация, актуальная для Joomla 2.5, Joomla 3 и немного для Joomla 4.

Для Joomla 5+ создан портал документации для пользователей Joomla — https://guide.joomla.org. В нём вы найдёте инструкции для контент-менеджеров и веб-мастеров, администраторов сайта:
- как работать с категориями, материалами, страницами сайта
- работа с модулями, стилями отображения
- загрузка картинок и работа с ними
- модули, плагины, компоненты, поиск, теги. процессы, мультиязычность, шаблоны писем, планировщик задач, микроразметка Schema.org...
- ... и многое многое другое, что вызывает так много вопросов у обычных пользователей Joomla.

Информация дана на английском языке. Можно использовать браузерный автоперевод для чтения по-русски или воспользоваться сайтом одного из энтузиастов Joomla-сообщества - https://jdocmanual.org, где даны ИИ-переводы на 9 (на данный момент) языков, включая русский.

Также всячески приветствуется помощь в наполнении портала документации. Ваша небольшая заметка или статья с парой скриншотов, ваш опыт - могут сэкономить тысячам и тысячам людей не один час Точно так же как и вы, пользуясь Joomla используете результаты трудов сотен людей со всего мира: от кода до документации.

Присоединяйтесь - это не сложно ) Главное начать ))

- https://guide.joomla.org/ - новы портал документации для пользователей Joomla 5+.
- https://docs.joomla.org/ - старый портал документации для пользователей Joomla 3.
- https://jdocmanual.org/ - документация по-русски (ИИ-перевод).

@joomlafeed

0 Пользователей и 1 Гость просматривают эту тему.
  • 13 Ответов
  • 1389 Просмотров
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Модуль вывода случайных товаров (mod_jshopping_random_products).
Необходимо чтобы модуль выводил только те товары, которые есть в наличии.
Например нужно выводить 10 случайных товаров.

в файле components/com_jshopping/tables/product.php внес изменение (добавил AND prod.product_quantity > 0):
Код
$query = "SELECT $adv_result FROM `#__jshopping_products` AS prod
                INNER JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id
                LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id = cat.category_id
                $adv_from
                WHERE prod.product_publish=1 AND cat.category_publish=1 AND prod.product_quantity > 0 ".$adv_query."
                GROUP BY prod.product_id order by ".$orderby."
                LIMIT ".$limitstart.", ".$count;

В результате получается что модуль выбирает необходимое количество случайных товаров (в моем случае это 10) и из этого количества выводит только те, которые есть в наличии. Например если из десяти товаров девять не будет в наличии - модуль выведет только один товар, а необходимо чтобы всегда выводил 10 любых товаров, которые есть в наличии.

Помогите пожалуйста, как правильно настроить выборку.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
получается что модуль выбирает необходимое количество случайных товаров (в моем случае это 10) и из этого количества выводит только те, которые есть в наличии
Этого пока не вижу из приведенного вами кода. После этого кода сделайте
Код
exit($query);
и приведите сюда содержание экрана.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Этого пока не вижу из приведенного вами кода. После этого кода сделайте
Код
exit($query);
и приведите сюда содержание экрана.

Код
SELECT prod.product_id, pr_cat.category_id, prod.`name_ru-RU` as name, prod.`short_description_ru-RU` as short_description, prod.product_ean, prod.manufacturer_code, prod.image, prod.product_price, prod.currency_id, prod.product_tax_id as tax_id, prod.product_old_price, prod.product_weight, prod.average_rating, prod.reviews_count, prod.hits, prod.weight_volume_units, prod.basic_price_unit_id, prod.label_id, prod.product_manufacturer_id, prod.min_price, prod.product_quantity, prod.different_prices, prod.delivery_times_id, prod.`extra_field_1` , prod.`extra_field_2` , prod.`extra_field_3` , prod.`extra_field_24` , prod.`extra_field_25` , prod.`extra_field_26` , prod.`extra_field_34` , prod.`extra_field_4` , prod.`extra_field_31` , prod.`extra_field_5` , prod.`extra_field_33` , prod.`extra_field_32` , prod.`extra_field_23` , prod.`extra_field_7` , prod.`extra_field_11` , prod.`extra_field_27` , prod.`extra_field_28` , prod.`extra_field_29` , prod.`extra_field_30` , prod.`extra_field_35` , prod.`extra_field_37` , prod.`extra_field_36` , prod.`extra_field_42` , prod.`extra_field_43` , prod.`extra_field_44` , prod.`extra_field_45` , prod.`extra_field_48` , prod.`extra_field_50` , prod.`extra_field_51` , prod.`extra_field_52` , prod.`extra_field_49` , prod.`extra_field_57` , prod.`extra_field_54` , prod.`extra_field_55` , prod.`extra_field_56` , prod.`extra_field_58` , prod.`extra_field_59` , prod.`extra_field_6` , prod.`extra_field_14` , prod.`extra_field_20` , prod.`extra_field_21` , prod.`extra_field_22` , prod.`extra_field_38` , prod.`extra_field_39` , prod.`extra_field_40` , prod.`extra_field_8` , prod.`extra_field_9` , prod.`extra_field_41` , prod.`extra_field_65` , prod.`extra_field_61` , prod.`extra_field_60` , prod.`extra_field_64` , prod.`extra_field_63` , prod.`extra_field_62` , prod.`extra_field_12` , prod.`extra_field_13` , prod.`extra_field_10` , prod.`extra_field_18` , prod.`extra_field_19` , prod.`extra_field_15` , prod.`extra_field_16` , prod.`extra_field_17` , prod.vendor_id, IF(prod.product_quantity>0,1,0) as qflag FROM `#__jshopping_products` AS prod INNER JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id = cat.category_id WHERE prod.product_publish=1 AND cat.category_publish=1 AND pr_cat.category_id IN (4) AND prod.access IN (1,1,5) AND cat.access IN (1,1,5) GROUP BY prod.product_id order by prod.product_price asc LIMIT 3, 10
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну а вы сами то видите ваше добавленное условие
Код
AND prod.product_quantity > 0
в этой строке запроса, который вы показываете? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
exit($query);
сорри, я выложил то что было по умолчанию.
Вот мой:

SELECT prod.product_id, pr_cat.category_id, prod.`name_ru-RU` as name, prod.`short_description_ru-RU` as short_description, prod.product_ean, prod.manufacturer_code, prod.image, prod.product_price, prod.currency_id, prod.product_tax_id as tax_id, prod.product_old_price, prod.product_weight, prod.average_rating, prod.reviews_count, prod.hits, prod.weight_volume_units, prod.basic_price_unit_id, prod.label_id, prod.product_manufacturer_id, prod.min_price, prod.product_quantity, prod.different_prices, prod.delivery_times_id, prod.`extra_field_1` , prod.`extra_field_2` , prod.`extra_field_3` , prod.`extra_field_24` , prod.`extra_field_25` , prod.`extra_field_26` , prod.`extra_field_34` , prod.`extra_field_4` , prod.`extra_field_31` , prod.`extra_field_5` , prod.`extra_field_33` , prod.`extra_field_32` , prod.`extra_field_23` , prod.`extra_field_7` , prod.`extra_field_11` , prod.`extra_field_27` , prod.`extra_field_28` , prod.`extra_field_29` , prod.`extra_field_30` , prod.`extra_field_35` , prod.`extra_field_37` , prod.`extra_field_36` , prod.`extra_field_42` , prod.`extra_field_43` , prod.`extra_field_44` , prod.`extra_field_45` , prod.`extra_field_48` , prod.`extra_field_50` , prod.`extra_field_51` , prod.`extra_field_52` , prod.`extra_field_49` , prod.`extra_field_57` , prod.`extra_field_54` , prod.`extra_field_55` , prod.`extra_field_56` , prod.`extra_field_58` , prod.`extra_field_59` , prod.`extra_field_6` , prod.`extra_field_14` , prod.`extra_field_20` , prod.`extra_field_21` , prod.`extra_field_22` , prod.`extra_field_38` , prod.`extra_field_39` , prod.`extra_field_40` , prod.`extra_field_8` , prod.`extra_field_9` , prod.`extra_field_41` , prod.`extra_field_65` , prod.`extra_field_61` , prod.`extra_field_60` , prod.`extra_field_64` , prod.`extra_field_63` , prod.`extra_field_62` , prod.`extra_field_12` , prod.`extra_field_13` , prod.`extra_field_10` , prod.`extra_field_18` , prod.`extra_field_19` , prod.`extra_field_15` , prod.`extra_field_16` , prod.`extra_field_17` , prod.vendor_id, IF(prod.product_quantity>0,1,0) as qflag FROM `#__jshopping_products` AS prod INNER JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id = cat.category_id WHERE prod.product_publish=1 AND cat.category_publish=1 AND prod.product_quantity > 0 AND pr_cat.category_id IN (4) AND prod.access IN (1,1,5) AND cat.access IN (1,1,5) GROUP BY prod.product_id order by prod.product_price asc LIMIT 23, 10
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не знаю, что такое mod_jshopping_random_products, но запрос выводит только товары из категории с ID = 4
Код
AND pr_cat.category_id IN (4)
Вы хотели, чтобы выводились только товары этой кагории? Если нет, то найдите в коде этого модуля вызов функции getRandProducts и поставьте 2-й аргумент = null.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Не знаю, что такое mod_jshopping_random_products, но запрос выводит только товары из категории с ID = 4Вы хотели, чтобы выводились только товары этой кагории? Если нет, то найдите в коде этого модуля вызов функции getRandProducts и поставьте 2-й аргумент = null.

да, нужно чтобы выводились товары из одной категории. И в этой категории достаточное количество товаров, которые есть в наличии...но..ситуация такая, как я описал выше. Бывает даже ситуация, когда вообще не выводит ни одного товара
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Тогда в той же функции, где вы добавили условие, измените
$limitstart = rand(0, $totalrow);
на
$limitstart = rand(0, $totalrow - 10);
Ой, там же есть $count, которая наверняка задается в админке модуля. Найдите эту настройку и поставьте 10.

Опять был не прав :).
Добавьте
Код
AND prod.product_quantity > 0
и в верхний запрос.
« Последнее редактирование: 25.10.2017, 00:39:34 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Тогда в той же функции, где вы добавили условие, измените
$limitstart = rand(0, $totalrow);
на
$limitstart = rand(0, $totalrow - 10);

Ой, там же есть $count, которая наверняка задается в админке модуля. Найдите эту настройку и поставьте 10.

там сейчас так:
Код
        $db->setQuery($query);
        $totalrow = $db->loadResult();
        $totalrow = $totalrow - $count;
        if ($totalrow < 0) $totalrow = 0;
        $limitstart = rand(0, $totalrow);

$count, я так понимаю, это необходимое количество отображаемого товара
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Обновил предыдущий пост.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Обновил предыдущий пост.
если я вас правильно понимаю, вы предлагаете в настройках модуля в админке установить необходимое количество выводимых товаров, например 10.
Но у меня там установлено необходимое количество. Но дело в том что даже если у меня в одной категории 1000 товаров и например 10 товаров нет в наличии, то бывает ситуация когда в выборку попадают именно эти 10 товаров, которых нет в наличии..и соответственно модуль ничего не выводит
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Добавьте
Код
AND prod.product_quantity > 0
и в верхний запрос.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

v-v

  • Захожу иногда
  • 98
  • 3 / 0
Добавьте
Код
AND prod.product_quantity > 0
и в верхний запрос.

Работает! Большое спасибо за помощь!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а какой модуль случайных товаров используется? этот https://nevigen.com/ru/modules/modul-sluchajnykh-tovarov-joomshopping.html?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Картинки товаров в результате поиска в JoomShopping + RokAjaxSearch

Автор MrJenika

Ответов: 93
Просмотров: 28798
Последний ответ 12.12.2025, 11:39:46
от SolopoV
JS Product Snapshot - плагин вывода товаров JoomShopping в контенте Joomla

Автор Arkadiy

Ответов: 110
Просмотров: 34818
Последний ответ 21.12.2023, 09:28:06
от sergeytolkachyov
Фильтр товаров крашит сайт

Автор psiworm

Ответов: 4
Просмотров: 2748
Последний ответ 04.11.2023, 12:31:07
от nevigen
Re: Модуль AJAX корзины (Multi)

Автор Садко

Ответов: 97
Просмотров: 20972
Последний ответ 08.10.2023, 07:49:27
от kit2m2
Модуль красивого выбора валюты

Автор beagler

Ответов: 8
Просмотров: 5756
Последний ответ 12.03.2023, 01:42:31
от ecolora