Форум русской поддержки Joomla!® CMS
03.12.2016, 04:28:04 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как вывести производителя из категории?

 (Прочитано 470 раз)
0 Пользователей и 1 Гость смотрят эту тему.
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« : 12.08.2015, 00:08:00 »

Доброго времени суток.
Как вывести производителей из категории?
Задача: При переходе в категорию, 1->2 , вывести всех производителей, входящих в данную категорию.
Как можно реализовать? заранее благодарствую.
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #1 : 12.08.2015, 00:27:45 »

Ну как бы можно сделать выборку. Если очень надо, на днях могу попробовать подкинуть идею.
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #2 : 12.08.2015, 20:53:29 »

Доброго времени суток.
Как вывести производителей из категории?
Задача: При переходе в категорию, 1->2 , вывести всех производителей, входящих в данную категорию.
Как можно реализовать? заранее благодарствую.

Опишите в каком виде и для чего вам это надо.
Записан
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« Ответ #3 : 14.08.2015, 09:46:12 »

Вообщем хочу примерно так :
Показать текстовый блок
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #4 : 14.08.2015, 12:45:42 »

Открываем:
components\com_jshopping\templates\default\category\category_default.php
между
defined('_JEXEC') or die('Restricted access');
и
?>
Вставляем:
Код:
$jshopConfig = &JSFactory::getConfig();
$mainframe = &JFactory::getApplication();
$category_id = JRequest::getInt('category_id');
$manufacturer_id = JRequest::getInt('manufacturer_id');   
$category = &JTable::getInstance('category', 'jshop');
$category->load($category_id);
$manufacturer_attr = $category->getManufacturers();

Дальше в нужном нам месте для вывода производителей, вставляем этот код:
      
Код:
<?php foreach($manufacturer_attr as $key){ ?>
<li><a href="<?php print SEFLink('index.php?option=com_jshopping&controller=manufacturer&task=view&manufacturer_id=' . $key->id);?>" title="<?php print $key->name;?>"><?php print $key->name;?></a></li>
        <?php }?>

P.S думаю ты сам обернешь это в какой то div и придашь стили.
P.S.S Так как я только учусь, то код может быть не самый оптимизированный, и иметь ошибки (хотя я проверял - все работает), то надеюсь более опытные форумчане подскажут что не так.
Записан
nevigen
Moderator
*****

Репутация: +734/-16
Offline Offline

Пол: Мужской
Сообщений: 8803


http://n*****n.com


« Ответ #5 : 14.08.2015, 13:03:03 »

в списках товаров и в категории. есть фильтр по производителям вверху.
это как вариант использования.
ну, а тому кто хочет помочь подсказка, что уже что-то по производителям передается в список товаров.
и список производителей там уже есть. ведь селект как то формируется ?
может надо просто использовать это ?
Записан
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« Ответ #6 : 14.08.2015, 13:05:54 »

Точно))) просто наверно выведу фильтр не списком ))) Отличная идея! Только надо додумать как)) подскажите куда смотреть?
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #7 : 14.08.2015, 13:07:54 »

в списках товаров и в категории. есть фильтр по производителям вверху.
это как вариант использования.
ну, а тому кто хочет помочь подсказка, что уже что-то по производителям передается в список товаров.
и список производителей там уже есть. ведь селект как то формируется ?
может надо просто использовать это ?
Спасибо за совет.
« Последнее редактирование: 14.08.2015, 13:11:49 от error648398 » Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #8 : 14.08.2015, 13:10:14 »

Точно))) просто наверно выведу фильтр не списком ))) Отличная идея! Только надо додумать как)) подскажите куда смотреть?
Ну фильтры формируются здесь:
components\com_jshopping\templates\default\list_products\form_filters.php - блок фильтров верхних в списке товаров
Записан
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« Ответ #9 : 14.08.2015, 13:26:17 »

Код:
<?php if ($this->filter_show_manufacturer) : ?>
                <div class="control-group box_manufacrurer">
                    <div class="control-label">
                        <?php print _JSHOP_MANUFACTURER.": "; ?>
                    </div>
                    <div class="controls">
                        <?php echo $this->manufacuturers_sel; ?>
                    </div>
                </div>
            <?php endif; ?>
            <?php print $this->_tmp_ext_filter_box;?>
Я как понимаю эта часть кода отвечает за вывод списка?
Вижу что присвоены стили
Но в php вообще не шарю, на стадии понимания.
Как подправить?
Записан
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« Ответ #10 : 14.08.2015, 14:08:18 »

А может быть есть модуль который просто выведет производителей конкретной категории?
примерно как https://joomshopping.pro/download/module-manufacturer.html но что бы вывод был по конкретной категории.
Записан
nevigen
Moderator
*****

Репутация: +734/-16
Offline Offline

Пол: Мужской
Сообщений: 8803


http://n*****n.com


« Ответ #11 : 14.08.2015, 14:40:24 »

если Вы пользуетесь модулями от разработчика компонента, пользуйтесь официальными версиями
http://joomlaforum.ru/index.php/topic,145068.0.html

для категории, выборка производителей производится средствами ЖШ по сути.
но предается в список товаров как готовый селект. почему не понятно.
Можете попробовать предложить разработчикам (http://joomlaforum.ru/index.php/topic,214147.0.html) сменить тип передачи данных (например просто передать массив), а вид вывода сделать в шаблоне.
так было бы правильнее, и логичнее.
Записан
dmitry_stas
Профи
********

Репутация: +794/-4
Offline Offline

Сообщений: 7732



« Ответ #12 : 14.08.2015, 14:49:47 »

Можете попробовать предложить разработчикам (http://joomlaforum.ru/index.php/topic,214147.0.html) сменить тип передачи данных (например просто передать массив), а вид вывода сделать в шаблоне.
так было бы правильнее, и логичнее.
та фиг с ним с селектом, пусть там формируется. просто и сам массив тоже передавать.
Записан
error648398
Осваиваюсь на форуме
***

Репутация: +21/-0
Offline Offline

Сообщений: 180


« Ответ #13 : 14.08.2015, 15:32:55 »

в списках товаров и в категории. есть фильтр по производителям вверху.
это как вариант использования.
ну, а тому кто хочет помочь подсказка, что уже что-то по производителям передается в список товаров.
и список производителей там уже есть. ведь селект как то формируется ?
может надо просто использовать это ?

Могу ошибаться - но селект же формируется если только включен фильтр в настройках JS.
Записан
dmitry_stas
Профи
********

Репутация: +794/-4
Offline Offline

Сообщений: 7732



« Ответ #14 : 14.08.2015, 15:39:12 »

не ошибаетесь. так и есть.
Записан
deminevgen
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 117



« Ответ #15 : 14.08.2015, 20:04:15 »

Это всё хорошо, но у меня думаю ничего не выйдет так как знаю по php равны 0. Вроде бы казалось задачка не очень сложная, но в итоге  Shocked . Буду искать другие пути решения.
Потому что как сделать стандартный фильтр не выпадающим списком так и не понял.
« Последнее редактирование: 14.08.2015, 20:13:41 от deminevgen » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet