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

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

Товары с меткой шли первыми в списке товаров категории

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

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

Сообщений: 37



« : 15.12.2014, 20:46:52 »

Здравствуйте...
Возможно ли реализовать отображение списка товаров категории таким образом, что бы товары с меткой (метка у которой id=3) шли первыми в списке товаров категории?

Насколько я понимаю необходимо править код файла "components/com_jshopping/templates/назване_шаблона/list_products/product.php", но какое условие там прописать не пойму!  !
Записан
Linfuby
Живу я здесь
******

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

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


Всё просто...


« Ответ #1 : 16.12.2014, 10:04:01 »

Шаблон тут не при чем... Надо делать правки в файле настроек.
\components\com_jshopping\lib\default_config.php
Ищите $config->sorting_products_field_select и там указаны списки для сортировки. Добавляете нужную, и в настройках магазина выбираете ее по умолчанию.
Если из моего поста не понятно, воспользуйтесь поиском на форуме по слову sorting_products_field_select
Записан
dmitry_stas
Профи
********

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

Сообщений: 7760



« Ответ #2 : 16.12.2014, 11:35:21 »

Ищите $config->sorting_products_field_select и там указаны списки для сортировки.

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

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

Сообщений: 37



« Ответ #3 : 16.12.2014, 12:28:19 »

Это не должна быть сортировка как таковая, это должно быть условие в выводе списка товаров категории, по условию какого товары с меткой (id=3) будут выводится первыми в списке а далее будут идти остальные товары.
Я так думаю что когда будет применятся сортировка к реализованному такому выводу, то товары с меткой все равно будут первыми.

Кстати модуль перед списком товаров тоже не вариант, так как во первых будет повтор товаров в модуле а потом в списке товаров, а во вторых делать для каждой категории свой модуль очень накладно и громоздко получится, да и вывод именно меток данной категории в категории тоже может быть проблемой!!

Как я думаю лучшим вариантом будет прописать условие в "list_products/product.php" по которому сначала выведется товары с меткой (id=3), а после будут идти товары!

А вообще суть такова и возможно я не в ту сторону смотрю, и кто-то подскажет лучше вариант:
Необходимо вывести  определенные товары первыми в списке категорий, но вот предустановленная сортировка не подходит, поту как из слов "не удобная и постоянно необходимо перестраивать", по этому лучшим вариантом подумал будет решение через отдельную метку, но как ее и только ее вывести первой в списке, ведь есть и другие метки и если просто делать сортировку то в начале выведутся товары со всеми метками, а необходимо что бы только (id=3), а дальше уже в зависимости от сортировки!
Записан
Linfuby
Живу я здесь
******

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

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


Всё просто...


« Ответ #4 : 16.12.2014, 14:58:14 »

а разве так получится сделать? ведь это не сортировка как таковая...
Немного воображения и логики, и любая проблема становится решенной
Код
$config->sorting_products_field_select =   array(1 => 'name',           2=>'prod.product_price',        3=>'prod.product_date_added', 5=>'prod.average_rating', 6=>'prod.hits',         4=>'IF(prod.label_id = 3, \'prod.label_id\', \'pr_cat.product_ordering\'), pr_cat.product_ordering');
 
http://localhost/administrator/index.php?option=com_jshopping&controller=config&task=catprod
Выбираем Сортировка товаров - Предустановленная
Радуемся результату (Конечно если я всё правильно понял по задаче)
Записан
rudoy24
Осваиваюсь на форуме
***

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

Сообщений: 37



« Ответ #5 : 16.12.2014, 15:39:41 »

 Smiley Да спосоп подходит, правда недостатком есть то что необходимо менять сами файлы движка и при обновлении все слетит...
Еще как вариант нашел бесплатный плагин "Сортировка отсутствующих товаров в JoomShopping" - http://nevigen.com/ru/shop/addons/sortirovka-otsutstvuyushchikh-tovarov-v-joomshopping.html#description

может попробовать его доделать так чтобы товары с меткой выводились первыми... щас гляну и отпишусь...
Записан
Cerber
Давно я тут
****

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

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


Богиня Иштар и ее пес Пи..ц


« Ответ #6 : 16.12.2014, 16:51:33 »

при обновлении все слетит...

Создайте свой файл настоек "user_config.php" - в той же папке
и записывайте в него только то что изменили в default_config.php

все просто Wink
Записан
dmitry_stas
Профи
********

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

Сообщений: 7760



« Ответ #7 : 16.12.2014, 18:15:34 »

Немного воображения и логики, и любая проблема становится решенной

понятно Azn не понял сразу, что нужно было именно так. да. для такой "сортировки" это вариант. только исходя из
Я так думаю что когда будет применятся сортировка к реализованному такому выводу, то товары с меткой все равно будут первыми.
надо видимо и для других полей добавить тоже самое
Записан
rudoy24
Осваиваюсь на форуме
***

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

Сообщений: 37



« Ответ #8 : 16.12.2014, 19:13:39 »

Подскажите как этот код (выводит отсутствующие товары последними):
Код:
$adv_result .= ", IF(prod.product_quantity>0,1,0) as qflag";
$order_explode = explode(" ", $order_query);
$order_query = 'ORDER BY qflag DESC, '.$order_explode[3].' '.$order_explode[4];
переписать под вывод товаров с метками id=3 первыми в списке товаров категории?
Записан
Linfuby
Живу я здесь
******

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

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


Всё просто...


« Ответ #9 : 17.12.2014, 09:28:09 »

rudoy24, Вам же уже дали ответ, который решит Вашу проблему. И при обновлении магазина ничего не слетит.
Зачем изобретать велосипед?
Если же хотите свой велосипед, то я уже показал какой должен быть запрос в ORDER BY
Код
IF(prod.label_id = 3, \'prod.label_id\', \'pr_cat.product_ordering\')
Переведу на русский: Если метка имеет значение 3, то сортировать в первую очередь по этой метке (label_id), иначе по обычной сортировке (product_ordering)
Записан
rudoy24
Осваиваюсь на форуме
***

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

Сообщений: 37



« Ответ #10 : 17.12.2014, 12:46:11 »

Да вопрос решен, спасибо Linfuby (+)
« Последнее редактирование: 17.12.2014, 14:24:21 от rudoy24 » Записан
юрий 009
Давно я тут
****

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

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



« Ответ #11 : 16.03.2016, 20:38:43 »

подскажите пожалуйста как сделать чтобы товар с меткою prod.label_id = 3 выводился останим
Записан
Страниц: [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