на
http://diski-piter.ru/ совсем другие параметры сортировки - для этого как раз и используют типы.в вашем случае все проще.
1)есть модуль или хак что выводит в выпадающем списке товары для их отбора
2)есть модуль или хак что выводит в выпадающем списке категории для отбора.
3)есть файл shop.parameter_search_form.php
там код отбора по цене в интервале.
// Add search according to price:
$item_name = "price";
$get_item_value = mosgetparam($_REQUEST, $item_name, "");
$get_item_value_comp = mosgetparam($_REQUEST, $item_name."_comp", "");
echo "<tr>\n <td width=\"35%\" height=\"2\" valign=\"top\"><div align=\"right\"><strong>";
echo $VM_LANG->_PHPSHOP_CART_PRICE." :</strong></div>\n </td>\n";
// comparison
echo "<td width=\"10%\" height=\"2\" valign=\"top\" align=\"center\">\n";
echo "<select class=\"inputbox\" name=\"price_comp\">";
echo "<option value=\"lt\"".(($get_item_value_comp=="lt")?" selected":"")."><</option>\n";
echo "<option value=\"le\"".((empty($get_item_value_comp)||$get_item_value_comp=="le")?" selected":"")."><=</option>\n";
echo "<option value=\"eq\"".(($get_item_value_comp=="eq")?" selected":"").">=</option>\n";
echo "<option value=\"ge\"".(($get_item_value_comp=="ge")?" selected":"").">>=</option>\n";
echo "<option value=\"gt\"".(($get_item_value_comp=="gt")?" selected":"").">></option>\n";
echo "<option value=\"ne\"".(($get_item_value_comp=="ne")?" selected":"")."><></option>\n";
echo "</select></td>";
// input text
echo "\n<td> <input type=\"text\" class=\"inputbox\" name=\"price\" value=\"$get_item_value\" size=\"20\" /></td>\n</tr>";
=> все это совместить и у вас будет отбор что вам нужно))