Страница 1 из 2

Переключение вида списка товаров в каталоге

Добавлено: 23 авг 2016, 19:41
Leon
Возник вопрос как организовать переключение вывода товаров в каталоге? Т.е. стандартный в виде таблицы, например, на вид в виде списка товаров.

Re: Переключение вида списка товаров в каталоге

Добавлено: 28 авг 2016, 18:16
admin
Здравствуйте.
Это, конечно, не совсем связано с модулем TSVshop, но есть несколько способов это сделать. Либо сменить налету стиль css для отображения каталога, либо сменить чанк отображения.

Re: Переключение вида списка товаров в каталоге

Добавлено: 28 авг 2016, 19:23
Leon
Может кому-то будет интересно. Сделал это таким образом (сменой чанка - шаблона вывода товара):

Выводим в каталоге таким образом:

Код: Выделить всё

{{switch}}
[[vivodtovarov? &id=`[*id*]`]]


Чанк switch:

Код: Выделить всё

<div class="toolbar">   
     <div class="views">
          <label>Вид списка:</label>
          <a href="[~[*id*]~]?p=1" title="Отображать список товаров в виде таблицы" class="grid"></a>
          <a href="[~[*id*]~]?p=2" title="Список товаров в виде списка, где один товар занимает одну строку" class="list"></a>
      </div>
         
      <div class="clear"></div>
</div>


Сниппет vivodtovarov:

Код: Выделить всё

<?php
$id = (isset($id)) ? $id : '';
$params['parents'] = $id;
$params['depth'] = '0';
$params['tvList'] = 'articul,cart_icon,inventory,price,tsvshop_param';

if ($_GET["p"] == "2") {
   $params['tpl'] = 'product6';
   return $modx->runSnippet("DocLister", $params);
}
else{
   $params['tpl'] = 'product5';
   return $modx->runSnippet("DocLister", $params);
}
?>


Пытался вначале вывод сделать

Код: Выделить всё

[[vivodtovarov? &id=`[*id*]` &tpl=`switch`]]
, но вызов чанка switch не захотел работать с выводом сниппета DocLister из сниппета vivodtovarov.

Re: Переключение вида списка товаров в каталоге

Добавлено: 29 авг 2016, 12:27
admin
Спасибо, полезное решение.

Re: Переключение вида списка товаров в каталоге

Добавлено: 29 авг 2016, 18:34
Leon
В идеале получить такой вариант полной сортировки:
Изображение

Пробовал добавить вариант сортировки по цене товара в обоих направлениях (Дорогие — Дешевые и Дешевые — Дорогие) и по наименованию (тоже в обоих). Попробовал такой вывод в чанке:

Код: Выделить всё

<div class="sort">
          <div class="sort-by">
               
             <label>Сортировать по:</label>
             <span style="width: 226px;" class="select-box">
               <select style="width: 266px;" name="count3" >
                  <option value="1">цене: Дорогие — Дешевые</option>
                  <option value="2">цене: Дешевые — Дорогие</option>
                  <option value="3">названию: А — я</option>
                  <option value="4">названию: я — А</option>
               </select>
             </span>
           </div>
       </div>
   <button type="submit" name="submit">ok</button>


И сниппет:

Код: Выделить всё

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    extract($_POST);
}

$countx = $count3;

$id = (isset($id)) ? $id : '';
$params['parents'] = $id;
$params['depth'] = '0';
$params['tvList'] = 'articul,cart_icon,inventory,price,tsvshop_param';

if ($countx == "1") {
$params['orderBy'] = 'price ASC';
$params['tvSortType']='UNSIGNED';
}
elseif ($countx == "2") {
$params['orderBy'] = 'price DESC';
$params['tvSortType']='UNSIGNED';
}
elseif ($countx == "3") {
$params['orderBy'] = 'pagetitle ASC';
}
elseif ($countx == "4") {
$params['orderBy'] = 'pagetitle DESC';
}

if ($_GET["p"] == "2") {
   $params['tpl'] = 'product6';
   return $modx->runSnippet("DocLister", $params);
}
else{
   $params['tpl'] = 'product5';
   return $modx->runSnippet("DocLister", $params);   
}

?>

Но вместе как-то не работает в этом варианте и сортировка и вывод товаров в нужном виде (строка/таблица).

Re: Переключение вида списка товаров в каталоге

Добавлено: 15 сен 2016, 13:48
admin
Не сортируется или сортировка неправильная?

Re: Переключение вида списка товаров в каталоге

Добавлено: 17 ноя 2016, 12:57
ekcreate
А не подскажите как реализовать эту сортировку от/до на ditto выводе
заранее спасибо?

Re: Переключение вида списка товаров в каталоге

Добавлено: 17 ноя 2016, 20:43
admin
Здравствуйте. Вы имеете ввиду, чтобы сортировать каталог только по алфавиту?

Re: Переключение вида списка товаров в каталоге

Добавлено: 27 ноя 2016, 12:00
ekcreate
Сделал вроде но только через get, и по цсайту не и по названию сортировку! Через post при пагинации и переходе на вторую страницу слетают сортировка
Решения пока не нашёл

Re: Переключение вида списка товаров в каталоге

Добавлено: 27 ноя 2016, 12:01
ekcreate
По цене*