Реализация сортировки через <select>

Тема в разделе "Shop-script", создана пользователем mariohs, 28 авг 2008.

  1. mariohs

    mariohs Постоялец

    Регистр.:
    1 май 2008
    Сообщения:
    115
    Симпатии:
    94
    Реализация сортировки через <select>. Результат виден на скриншоте.
    sort.JPG
    В файлах category.tpl.html, search_simple.tpl.html, category_search_result.tpl.html и pricelist.tpl.html заменить {$string_product_sort} на:

    Код:
    <select name='categoryID' onchange="document.location.href=value;">
      <option value="index.php?categoryID={$categoryID}&sort=name&direction=ASC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="name") && ($_GET['direction']=="ASC")) echo "selected" {/php}>Наименование: А - Я</option>
      <option value="index.php?categoryID={$categoryID}&sort=name&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="name") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Наименование: Я - А</option>
      <option value="index.php?categoryID={$categoryID}&sort=Price&direction=ASC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="Price") && ($_GET['direction']=="ASC")) echo "selected" {/php}>Цена: меньш. - больш.</option>
      <option value="index.php?categoryID={$categoryID}&sort=Price&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="Price") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Цена: больш. - меньш.</option>
      <option value="index.php?categoryID={$categoryID}&sort=rating&direction=ASC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="rating") && ($_GET['direction']=="ASC")) echo "selected" {/php}>Рейтингу: возр. - убыв.</option>
      <option value="index.php?categoryID={$categoryID}&sort=rating&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="rating") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Рейтингу: убыв. - возр.</option>
    </select>
    
     
    Phoenix_666 и Dmytro_ua нравится это.
  2. daniloff

    daniloff Постоялец

    Регистр.:
    31 май 2008
    Сообщения:
    78
    Симпатии:
    3
    Там есть ссылки - пишешь на Java переход в option по выбору параметра!

    да и как сделать фильтр - выбор параметра и выводит по всем категориям результат действия фильтра!

    Например выбрали параметр 1 и вывод всех товаров по каждой категори товара с опцией 1
     
  3. Dmytro_ua

    Dmytro_ua

    Регистр.:
    15 фев 2008
    Сообщения:
    239
    Симпатии:
    21
    Спасибо! Только у меня в категории по рейтингу не сортирует :nezn:
    В прайсе и поиске при попытке сортировки выкидывает на первую страницу
     
  4. Dmytro_ua

    Dmytro_ua

    Регистр.:
    15 фев 2008
    Сообщения:
    239
    Симпатии:
    21
    На основе этого придумал то, что собственно давно искал и не мог найти.
    Товар, который есть в наличии - сначала, а потом уже которого нет.

    Добавляем к mariohs варианту

    HTML:
     <option value="index.php?categoryID={$categoryID}&sort=in_stock&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="in_stock") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Есть в наличии (первыми)</option>
     
    ndmitry и mariohs нравится это.
  5. djslap

    djslap

    Регистр.:
    29 сен 2007
    Сообщения:
    193
    Симпатии:
    2
    Если не сложно, кто себе это поставил - покажите как смотрится! Дайте ссылку в личку!
     
  6. Dmytro_ua

    Dmytro_ua

    Регистр.:
    15 фев 2008
    Сообщения:
    239
    Симпатии:
    21
    В первом посте mariohs выложил аттач (развернутый). Вот именно так и смотрится.
    Вот у меня посмотри в обычном режиме.
     

    Вложения:

    • sel.JPG
      sel.JPG
      Размер файла:
      5,6 КБ
      Просмотров:
      26
    Phoenix_666 и djslap нравится это.
  7. Dmytro_ua

    Dmytro_ua

    Регистр.:
    15 фев 2008
    Сообщения:
    239
    Симпатии:
    21
    Есть какие-то идеи по поводу 3-го поста?
     
  8. mariohs

    mariohs Постоялец

    Регистр.:
    1 май 2008
    Сообщения:
    115
    Симпатии:
    94
    Хм, у меня в поиске работает. А прайс-лист я отключил. Но по идее тоже должна работать...
     
  9. Dmytro_ua

    Dmytro_ua

    Регистр.:
    15 фев 2008
    Сообщения:
    239
    Симпатии:
    21
    Чтобы у меня заработал рейтинг, мне нужно было изменить

    HTML:
    <option value="index.php?categoryID={$categoryID}&sort=rating&direction=ASC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="rating") && ($_GET['direction']=="ASC")) echo "selected" {/php}>Рейтингу: возр. - убыв.</option>
      <option value="index.php?categoryID={$categoryID}&sort=rating&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="rating") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Рейтингу: убыв. - возр.</option>
    на

    HTML:
      <option value="index.php?categoryID={$categoryID}&sort=customers_rating&direction=ASC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="customers_rating") && ($_GET['direction']=="ASC")) echo "selected" {/php}>Рейтингу: убыв. - возр.</option>
      <option value="index.php?categoryID={$categoryID}&sort=customers_rating&direction=DESC" {php}if (isset($_GET['sort']) && ($_GET['sort']=="customers_rating") && ($_GET['direction']=="DESC")) echo "selected" {/php}>Рейтингу: возр. - убыв.</option>
     
    mariohs и ndmitry нравится это.
  10. alexmar

    alexmar Постоялец

    Регистр.:
    16 авг 2008
    Сообщения:
    51
    Симпатии:
    5

    SELECT не работает в файлах search_simple.tpl.html, category_search_result.tpl.html и pricelist.tpl.html