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

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

Сортировка товаров по принципу Яндекс.Маркета

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

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

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


каждому свое...


« : 07.12.2012, 08:36:25 »

В топике http://joomlaforum.ru/index.php/topic,190182.new.html#new, нашел не много нужной информации, но так до конца ине могу понять в каком файле править внешний вид "сортировки"
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #1 : 07.12.2012, 22:20:19 »

вывод осуществляется здесь
components\com_jshopping\templates\default\list_products\form_filters.php
Записан
MANUNY
Осваиваюсь на форуме
***

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

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


каждому свое...


« Ответ #2 : 08.12.2012, 05:57:41 »

вывод осуществляется здесь
components\com_jshopping\templates\default\list_products\form_filters.php

с этим я разобрался уважаемый nevigen, но все равно не понимаю, в файле components\com_jshopping\templates\default\list_products\form_filters.php за это отвечает вот этот кусок кода
Код:
<?php if ($this->config->show_sort_product){?>
        <span class="box_products_sorting"><?php print _JSHOP_ORDER_BY.": ".$this->sorting?><img src="<?php print $this->path_image_sorting_dir?>" alt="orderby" onclick="submitListProductFilterSortDirection()" /></span>
    <?php }?>
что и где нужно прописать чтобы изменить?
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #3 : 08.12.2012, 11:50:13 »

вот вместо этого,
нужно принять данные типа так
Код:
<?php
$mainframe =& JFactory::getApplication();
$order = $mainframe->getUserStateFromRequest( 'order', 'order', $this->config->product_sorting, 'int');
?>
а дальше морочится с ними. и обрабатывать и выводить.
если Вы думаете что это 2 строки то нет Azn

мы делали вот таким макаром. http://decorashop.com.ua/pokrytiya-dekorativnye/oboi-pod-pokrasku.html
Записан
MANUNY
Осваиваюсь на форуме
***

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

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


каждому свое...


« Ответ #4 : 09.12.2012, 07:48:23 »

вот вместо этого,
нужно принять данные типа так
Код:
<?php
$mainframe =& JFactory::getApplication();
$order = $mainframe->getUserStateFromRequest( 'order', 'order', $this->config->product_sorting, 'int');
?>
а дальше морочится с ними. и обрабатывать и выводить.
если Вы думаете что это 2 строки то нет Azn

мы делали вот таким макаром. http://decorashop.com.ua/pokrytiya-dekorativnye/oboi-pod-pokrasku.html


Ставлю + , но все равно не понял
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #5 : 10.12.2012, 02:06:33 »

nevigen, а может плагин можно сделать? основа то есть у вас
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #6 : 10.12.2012, 10:08:52 »

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

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

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


каждому свое...


« Ответ #7 : 10.12.2012, 17:50:44 »

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


я так понимаю такая возможность будет, но в более новых версиях
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #8 : 11.12.2012, 12:07:46 »

я так понимаю такая возможность будет, но в более новых версиях
мы не разработчики Azn
это в хотелки надо писать. Виктор ответит.
Либо.... в шаблоне хакать.
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #9 : 17.12.2012, 01:02:30 »

nevigen, а может решение выложите?
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #10 : 17.12.2012, 13:03:55 »

врядли.
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #11 : 17.12.2012, 13:11:09 »

врядли.
А купить реально? Всё-равно, я так понимаю, вы решение актуализировать под себя будете под новые версии ЖШ, если они будут и если будут изменения критичные...
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #12 : 17.12.2012, 13:14:51 »

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

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

Сообщений: 184


« Ответ #13 : 17.12.2012, 15:07:00 »

Ну, хотелось бы. И, я думаю, что желающих будет. Тему не раз поднимали на форуме.
Записан
MANUNY
Осваиваюсь на форуме
***

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

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


каждому свое...


« Ответ #14 : 17.12.2012, 15:47:26 »

Ну, хотелось бы. И, я думаю, что желающих будет. Тему не раз поднимали на форуме.

я за!
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #15 : 17.12.2012, 16:01:02 »

до НГ точно нет.
в январе напомните Wink посмотрим можно ли аддоном оформить.
Если разработчики сами не сделают выбор в очередном релизе.
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #16 : 18.12.2012, 09:05:01 »

Если разработчики сами не сделают выбор в очередном релизе.
А что, есть возможность, что сделают?
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #17 : 18.12.2012, 10:08:57 »

А что, есть возможность, что сделают?
У меня в подписи стоит "JoomShopping Team" ?
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #18 : 18.12.2012, 11:25:36 »

Это я к тому, что с какого перепугу именно сейчас делать, если до этого тишина была... Ну да ладно... Сделают - все будут рады
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #19 : 27.01.2013, 00:15:38 »

nevigen, пока никаких новостей по поводу вашего решения?
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #20 : 27.01.2013, 02:58:38 »

в январе напомните Wink посмотрим можно ли аддоном оформить.
неа даже не смотрели пока Azn
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #21 : 27.01.2013, 13:47:39 »

Может глянете?
Записан
denben777
Осваиваюсь на форуме
***

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

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


« Ответ #22 : 18.03.2013, 06:06:57 »

Странно.... вам же nevigen дал вызов и даже ссылку на сайт с "демо" - что вы ждете? Или кнопка правая не работает?
Чтобы быстро:
Откройте файл form_filter.php и удалите все между:
Код:
<?php if ($this->config->show_sort_product){?>
.....удаляем.....
<?php }?>
Затем сюда же вставляем:
Код:
<?php
$mainframe =& JFactory::getApplication();
$orderby = $mainframe->getUserStateFromRequest( $context.'orderby', 'orderby', $jshopConfig->product_sorting_direction, 'int');
$order = $mainframe->getUserStateFromRequest( 'order', 'order', $this->config->product_sorting, 'int');
echo '<div style="display:none;">'.$this->sorting.'</div>'
?>
<span class="box_products_sorting">Сортировка:
<span class="link_products_sorting">        
<?php if ($order==1) {?>
<span class="order">По имени</span>          
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 1; submitListProductFilters(); return false;">По имени</a>
<?php } if ($order==6) {?>
<span class="order">По популярности</span>            
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 6; submitListProductFilters(); return false;">По популярности</a>
<?php } if ($order==3) {?>
<span class="order">По новизне</span>            
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 3; submitListProductFilters(); return false;">По новизне</a>
<?php } if ($orderby==1 && $order==2) {?>
<span class="order">От дорогих к дешевым</span>            
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 1; $_('order').value = 2; submitListProductFilters(); return false;">От дорогих к дешевым</a>
<?php } if ($orderby==0 && $order==2) {?>
<span class="order">От дешевых к дорогим</span>    
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 2; submitListProductFilters(); return false;">От дешевых к дорогим</a>
<?php }?>
</span>
</span>
Надеюсь понятно, что:
  • По популярности - это Популярные
  • По новизне - это по Дате
  • От дорогих к дешевым и от дешевых к дорогим - это сортировка по Цене с разным направлением (в стоке стрелка справа)
  • $_('orderby').value = 0 - это стрелка вверх, $_('orderby').value = 1 - стрелка вниз
« Последнее редактирование: 18.03.2013, 06:21:41 от denben777 » Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #23 : 18.03.2013, 10:45:27 »

А сложно оформить это модулем? Чтобы в JS отключить фильтры, а модуль поставить в модульную позицию
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #24 : 18.03.2013, 11:06:24 »

Azn
забавно... данный шаблон 99% не меняется по версиям.

а вопрос напоминает... " а можно взять ложку побольше ?" Azn
Записан
Alienoff
Осваиваюсь на форуме
***

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

Сообщений: 184


« Ответ #25 : 18.03.2013, 11:29:42 »

Да я не про шаблон спрашивал... Или я чего-то не понимаю... Извиняюсь.
Записан
nevigen
Moderator
*****

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

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


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


« Ответ #26 : 18.03.2013, 11:49:50 »

Откройте файл form_filter.php и удалите все между:
Записан
MANUNY
Осваиваюсь на форуме
***

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

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


каждому свое...


« Ответ #27 : 04.04.2013, 12:22:55 »

Странно.... вам же nevigen дал вызов и даже ссылку на сайт с "демо" - что вы ждете? Или кнопка правая не работает?
Чтобы быстро:
Откройте файл form_filter.php и удалите все между:
Код:
<?php if ($this->config->show_sort_product){?>
.....удаляем.....
<?php }?>
Затем сюда же вставляем:
Код:
<?php
$mainframe =& JFactory::getApplication();
$orderby = $mainframe->getUserStateFromRequest( $context.'orderby', 'orderby', $jshopConfig->product_sorting_direction, 'int');
$order = $mainframe->getUserStateFromRequest( 'order', 'order', $this->config->product_sorting, 'int');
echo '<div style="display:none;">'.$this->sorting.'</div>'
?>
<span class="box_products_sorting">Сортировка:
<span class="link_products_sorting">       
<?php if ($order==1) {?>
<span class="order">По имени</span>         
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 1; submitListProductFilters(); return false;">По имени</a>
<?php } if ($order==6) {?>
<span class="order">По популярности</span>           
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 6; submitListProductFilters(); return false;">По популярности</a>
<?php } if ($order==3) {?>
<span class="order">По новизне</span>           
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 3; submitListProductFilters(); return false;">По новизне</a>
<?php } if ($orderby==1 && $order==2) {?>
<span class="order">От дорогих к дешевым</span>           
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 1; $_('order').value = 2; submitListProductFilters(); return false;">От дорогих к дешевым</a>
<?php } if ($orderby==0 && $order==2) {?>
<span class="order">От дешевых к дорогим</span>   
<?php } else {?>
<a class="order" href="#" onclick="$_('orderby').value = 0; $_('order').value = 2; submitListProductFilters(); return false;">От дешевых к дорогим</a>
<?php }?>
</span>
</span>
Надеюсь понятно, что:
  • По популярности - это Популярные
  • По новизне - это по Дате
  • От дорогих к дешевым и от дешевых к дорогим - это сортировка по Цене с разным направлением (в стоке стрелка справа)
  • $_('orderby').value = 0 - это стрелка вверх, $_('orderby').value = 1 - стрелка вниз

Ни чего не работает, даже полностью удаляю данный файл, стандартная сортировка все равно остается в чем причина?
Записан
skyrec
Давно я тут
****

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

Сообщений: 388


Люблю я детей !!!


« Ответ #28 : 04.04.2013, 12:32:20 »

Вы посмотрите в какой папке вы правите. Используете свой шаблон или дефолтный ?
Записан
MANUNY
Осваиваюсь на форуме
***

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

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


каждому свое...


« Ответ #29 : 04.04.2013, 12:34:16 »

дефолтный на дивах от разработчиков
Записан
Страниц: [1] 2 3  Все   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

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