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

ivan.sergeev

  • Захожу иногда
  • 73
  • 1 / 0
Добрый вечер!
Возможно ли как нибудь реализовать список производителей, а рядом с каждым производителем количество его товаров?. Допустим - apple (5) Samsung (10) и т.п.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Количество продуктов для производителя №1
Код
$manufacturer = JSFactory::getTable('manufacturer', 'jshop');
$manufacturer->load(1);
$filters = array();
$total = $manufacturer->getCountProducts($filters);
echo $manufacturer->name.' ('.$total.')';
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

ivan.sergeev

  • Захожу иногда
  • 73
  • 1 / 0
Спасибо, будем пробовать!
*

ivan.sergeev

  • Захожу иногда
  • 73
  • 1 / 0
Отлично, работает!)
Только вопрос - в модуле для джшоппинга производители стоит стандартный универсальный default template для каждого производителя, как этот код переделать, чтобы он был актуален для каждого производителя, независимо от его порядкового номера?
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Рассматривался стандартный модуль для версии 4.0.1:

Если не хотите Сами думать и читать готовый код, который Вам дают, то держите следующую порцию кода, и осознавайте, что кодить Вам пока рано.
Внутри цикла в файле модуля (см. путь к файлу)
Код
foreach ($list as $key => $value){
Нужно добавить:
Код
$manufacturer = JSFactory::getTable('manufacturer', 'jshop');
$manufacturer->load($list[$key]->manufacturer_id);
$list[$key]->count_products = $manufacturer->getCountProducts(array());
Ну а в шаблоне (см. путь к файлу) соответственно вывести это количество где нужно. Оно доступно в переменной <?php print $curr->count_products; ?>
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

ivan.sergeev

  • Захожу иногда
  • 73
  • 1 / 0
спасибо огромное!) я не программист, сам бы не разобрался
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
В дополнение к теме.
Тоже задумал такое прикрутить на днях
С модулем получилось, а в шаблоне производителей прописал так
Код
<?php 
$manufacturer = JSFactory::getTable('manufacturer', 'jshop');
$manufacturer->load($row->manufacturer_id);
$filters = array();
$total = $manufacturer->getCountProducts($filters);
print $manufacturer->name.' ('.$total.')';
 ?>
если что не так поправьте пожалуйста.
« Последнее редактирование: 22.08.2015, 14:36:02 от Biss »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
если уж делать запрос на каждого производителя, то хотя бы сэкономить на load.
Код
$this->manufacturer->manufacturer_id = $row->manufacturer_id;
$total = $this->manufacturer->getCountProducts(array());
print $row->name.' ('.$total.')';

а вообще лучше конечно все вытащить 1 запросом.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
только $row->name. наверно лишнее если в шаблоне делать в моем случае.
а для модуля тоже можно упростить код ? или оставить как есть...
*

dmitry_stas

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

Biss

  • Давно я тут
  • 994
  • 101 / 0
Знать бы ещё как написать...
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Код
$db = JFactory::getDBO();
$db->setQuery('SELECT product_manufacturer_id, count(product_id) AS count FROM `#__jshopping_products` WHERE product_publish=1 GROUP BY product_manufacturer_id');
$man = $db->loadObjectList('product_manufacturer_id');
// количество для ID производителя - $man[ID производителя]->count
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
вывожу в модуле так работает
<?php print $man[2]->count; ?>
а как сделать чтоб автоматически подставлялось ид
пробовал
<?php print $man[$manufacturer_id]->count; ?>
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну видимо $man[$row->manufacturer_id]->count , или как там в модуле manufacturer_id получить
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
curr  ^-^  . победа!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Условие для кол-ва товара больше нуля

Автор kik84

Ответов: 3
Просмотров: 315
Последний ответ 16.02.2024, 13:33:24
от kit2m2
WT On fly image handler изображения товара JoomShopping в webp на лету

Автор sergeytolkachyov

Ответов: 9
Просмотров: 1520
Последний ответ 17.10.2023, 12:40:19
от sergeytolkachyov
Убрать модуль в карточке товара JoomShopping

Автор alexkraym

Ответов: 35
Просмотров: 4441
Последний ответ 21.08.2023, 07:17:53
от delchev
Проблема с фото в карточке товара

Автор astapon

Ответов: 18
Просмотров: 1622
Последний ответ 24.04.2023, 12:37:50
от kit2m2
Код товара - автоматическая генерация.

Автор AndreyUA

Ответов: 93
Просмотров: 12556
Последний ответ 17.03.2023, 11:28:47
от geral