PDA

Zobacz pełną wersję : virtuemart - rozne sortowienie w roznych kategoriach



asiah
17-06-2009, 11:53
mam: VirtueMart 1.1.2 stable i joomla Wersja 1.5.11.

Potrzebuje zrobic maly myk.

Mam jedna kategorie, w ktorej znajduja sie prodkty, ktore chcialbym zeby byly domyslnie sortowane po dacie dodania - najnowsze u gory.

a reszta kategorii ma sie sortowac alfabetycznie.

grzebalam w plikach:
browse_orderbyform.tpl
browse_orderbyfields.tpl
ale niestety bezskutecznie


z gory dzieki
asiah

Jola
17-06-2009, 13:08
Plik shop_browse_queries.php

switch( $orderby ) {
case 'product_list':
$orderbyField = '`#__{vm}_product_category_xref`.`product_list`'; break;
case 'product_name':
$orderbyField = '`#__{vm}_product`.`product_name`'; break;
case 'product_price':
$orderbyField = '`#__{vm}_product_price`.`product_price`'; break;
case 'product_sku':
$orderbyField = '`#__{vm}_product`.`product_sku`'; break;
case 'product_cdate':
$orderbyField = '`#__{vm}_product`.`cdate`'; break;
default:
$orderbyField = '`#__{vm}_product`.`product_name`'; break;
}To jest kod odpowiedzialny za sortowanie.
Można wymusić sposób sortowania w zależności od wybranej kategorii.
Pozdrawiam

asiah
19-06-2009, 10:40
hey jolaass!

dzieki wielkie za odpowiedz,
jednak jest ona dla mnie nie wystarczajaca, bo nie wiem jak mam dodac case'a, zeby mi rozpoznawal po kategorii...

probowalam cos wykombinowac ale bezskutecznie...

jesli mozesz to pomoz mi dodac taki kod, zeby w kategorii np nr 14 sortowal mi od niedawno dodanych do najstarszych.

z gory dzieki
asiah

Jola
19-06-2009, 11:35
Witam,

switch( $orderby ) {
case 'product_list':
$orderbyField = '`#__{vm}_product_category_xref`.`product_list`'; break;
case 'product_name':
if ($category_id == 14)
$orderbyField = '`#__{vm}_product`.`cdate`';
else
$orderbyField = '`#__{vm}_product`.`product_name`';
break;
case 'product_price':
$orderbyField = '`#__{vm}_product_price`.`product_price`'; break;
case 'product_sku':
$orderbyField = '`#__{vm}_product`.`product_sku`'; break;
case 'product_cdate':
$orderbyField = '`#__{vm}_product`.`cdate`'; break;
default:
$orderbyField = '`#__{vm}_product`.`product_name`'; break;
}Pozdrawiam