Добавляем юзабилити в модуль InstantShop: Категории

+24
1.87K
Делаю магазин на инстант-шоп. Как и в любом магазине, понадобился модуль InstantShop: Категории.
Был удивлен, когда из настроек модуля увидел только два варианта: все категории развернуты, или все свернуты.

На мой взгляд, да и гляди на другие магазины, правильнее было бы, если бы в модуле были развернуты все категории, в которые входит текущая.
Вот так

Иллюстрация

Сказано — сделано.

Открываем файл mod_inshop_tree.tpl и начинаем вносить правки. Сперва, для удобства, добавим класс к пункту, который сейчас активен.
Заменим в двух местах
  1. {else}
  2. {$item.title}
  3. {/if}
на
  1. {else}
  2. <a class="current" href="/shop/{$item.seolink}">{$item.title}</a>
  3. {/if}
Теперь добавим код разверачивания всех категорий, в которые входит текущая.

После кода
  1. {if !$cfg.expand_all}
  2. {literal}
  3. $('#inshop_tree li > ul').hide();
  4. {/literal}
  5. {/if}
  6.  
  7. {literal}
Добавим строку
  1. $('#inshop_tree .current').parents('ul').show();
Все, категории будут открыты. Осталась одна проблемка, плюсики в нужных местах заменить на минусики.

Ниже последней правки добавим еще две строки
  1. $('#inshop_tree .current').parents('ul').parent('li').find('.cat_plus:first').hide();
  2. $('#inshop_tree .current').parents('ul').parent('li').find('.cat_minus:first').show();
Готово. Сохраняем. Очищаем кэш и проверяем.

Если вносить правки вручную не хочется, можно скачать правленый файл здесь
0
Def Def 10 лет назад #
так вроде штатными спобосами можно сделать.

а думали как сделать уведомление во сплывающем окне при добавлении товара в корзину? вот это мегаактуально с точки зрения юзабилити
0
Zau4man Zau4man 10 лет назад #
так вроде штатными спобосами можно сделать
Подскажите как. Ниже скрин настроек модуля.
""

а думали как сделать уведомление во сплывающем окне при добавлении товара в корзину?
тут кодить нужно будет. А кодить - это не про меня
0
Aryuts Aryuts 10 лет назад #
Согласен, что так намного удобнее. v +1
0
Bubble Gumoff Bubble Gumoff 10 лет назад #
Как просто popcorn +1 , почему то у меня сложнее получилось Хак для меню Шопа . Непомню, но наверно из-за многоуровневой вложенности меню.
0
PET PET 10 лет назад #
Автору благодарность!
Не по теме, но всё же... может, кто-нибудь сделает хак для фильтра, чтобы было как в современных магазинах - с ползунками glasses
0
Александр Александр 8 лет назад #
А ползунки по прежнему никто не осилил smile
0
Александр Александр 8 лет назад #
<li style="padding:{php}echo $padding;{/php}" class="cat"> - а вот это для чего?

непобедил Ваш способ...
0
Zau4man Zau4man 8 лет назад #
Александр, скачайте файл в конце записи. Он 100% рабочий.
Посмотрите, какие в нем изменения относительно стандартного.

Еще от автора

Элемент Вопросы/Ответы для конструктора блоков Zbuilder
В приложении к посту архив, при установке которого в компонент Zbuilder будет добавлен элемент Вопросы/ответы, который используется на демо
Конструктор блоков Zbuilder
Я уже делал и использовал на нескольких проектах шорткоды. Мне не понравилось. Потом были просто блоки. Собрал из них несколько проектов.
Про дочерние шаблоны в 2.17.0
В ближайшее время состоится релиз InstantCMS 2.17.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.