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

  • 62 Ответов
  • 6073 Просмотров

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

*

MANUNY

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
вывод осуществляется здесь
components\com_jshopping\templates\default\list_products\form_filters.php
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

MANUNY

  • ***
  • 42
  • 0
  • каждому свое...
вывод осуществляется здесь
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

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

мы делали вот таким макаром. http://decorashop.com.ua/pokrytiya-dekorativnye/oboi-pod-pokrasku.html
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

MANUNY

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

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


Ставлю + , но все равно не понял

*

Alienoff

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
можно сделать все...
но проще сделать в стоке выбор так или так.
всегда проще и лучше сделать сразу код нормальный, чем вешать плагины и искать пути обхода встроеной логики.
и потом сидеть обновлять от версии к версии.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

MANUNY

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


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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
я так понимаю такая возможность будет, но в более новых версиях
мы не разработчики :)
это в хотелки надо писать. Виктор ответит.
Либо.... в шаблоне хакать.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

  • ***
  • 181
  • 0
nevigen, а может решение выложите?

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
врядли.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
отдельным аддоном не оформляли просто потому и в продаже нету.
сделаем выложим. когда ? не знаю. точно не приоритет.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

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

*

MANUNY

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

я за!

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
до НГ точно нет.
в январе напомните ;) посмотрим можно ли аддоном оформить.
Если разработчики сами не сделают выбор в очередном релизе.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

  • ***
  • 181
  • 0
Если разработчики сами не сделают выбор в очередном релизе.
А что, есть возможность, что сделают?

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
А что, есть возможность, что сделают?
У меня в подписи стоит "JoomShopping Team" ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

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

*

Alienoff

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
в январе напомните ;) посмотрим можно ли аддоном оформить.
неа даже не смотрели пока :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

  • ***
  • 181
  • 0
Может глянете?

*

denben777

  • ***
  • 157
  • 75
Странно.... вам же 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 - стрелка вниз

*

Alienoff

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
:)
забавно... данный шаблон 99% не меняется по версиям.

а вопрос напоминает... " а можно взять ложку побольше ?" :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

Alienoff

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

*

nevigen

  • *****
  • 8832
  • 754
  • http://n*****n.com
Откройте файл form_filter.php и удалите все между:
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !

*

MANUNY

  • ***
  • 42
  • 0
  • каждому свое...
Странно.... вам же 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

  • ****
  • 383
  • 10
  • Люблю я детей !!!
Вы посмотрите в какой папке вы правите. Используете свой шаблон или дефолтный ?

*

MANUNY

  • ***
  • 42
  • 0
  • каждому свое...
дефолтный на дивах от разработчиков