Выберите более одного элемента в многоуровневой навигации (несколько флажков Select/F -Facebox)
-
16-10-2019 - |
Вопрос
Как преобразовать стандартную многослойную навигацию в использование флажок или несколько выберите входы для атрибутов типа падать или же выбор из нескольких вариантов?
Например, если пользователь выбирает синий а также красный Для атрибута цвета слоистая навигация показывает все элементы, соответствующие синим ИЛИ ЖЕ красный.
Решение
Есть много расширений, которые дадут вам эту функциональность (поиск «улучшенной слоистой навигации»). Я попробовал все расширения, перечисленные ниже, но мой любимый - команда электронной коммерции - Мне нравится это за минималистичный характер, он не пытается делать слишком много, но очень мощный и хорошо работает из коробки. Он также обладает поддержкой цветных образцов, как вы описали.
Некоторые другие не в определенном порядке:
- http://amasty.com/improved-navigation.html
- http://www.aitoc.com/en/magentomods_layered_navigation_pro.html
- http://www.manadev.com/seo-layered-navigation-lus
- http://www.gomage.com/extensions/gomage-advanced-navigation.html
Имейте в виду, что они могут вызвать конфликты с другими сторонними модулями.
Если вы в основном хотите сделать это с помощью цветных образцов, я предлагаю вам проверить это расширение Чад Морган.
Вот и Статья Инчо о том, чтобы держать неиспользованные фильтры видимыми.
Если вы ищете, чтобы кодировать это самостоятельно, я думаю, что ответ на ваш вопрос может быть слишком длинным для этого форума. У меня нет ссылки на сообщение в блоге/учебник, обучающий вас, как это сделать, но я предлагаю начать с расширения слоистых навигационных блоков.
Другие советы
Если вы заинтересованы только в преобразовании слоистой навигации по умолчанию в флажки, решение очень простое и размещает его здесь.
Отредактировать код app/design/frontend/ourpackage/ourtheme/template/catalog/layer/filter.phtml
файл следующим образом:
<ol>
<?php foreach ($this->getItems() as $_item): ?>
<li>
<?php if ($_item->getCount() > 0): ?>
<form>
<span class="check-box">
<input type="checkbox" name="vehicle" onclick='window.location.assign("<?php echo $this->urlEscape($_item->getUrl()) ?>")'/>
</span>
<a href="<?php echo $this->urlEscape($_item->getUrl()) ?>">
<?php echo $_item->getLabel() ?>
<?php if ($this->shouldDisplayProductCount()): ?>
<span class="count">(<?php echo $_item->getCount() ?>)</span>
<?php endif; ?>
</a>
</form>
<?php else: ?>
<form>
<span class="check-box">
<input type="checkbox" name="vehicle" onclick='window.location.assign("<?php echo $this->urlEscape($_item->getUrl()) ?>")'/>
</span>
<span>
<?php echo $_item->getLabel(); ?>
<?php if ($this->shouldDisplayProductCount()): ?>
<span class="count">(<?php echo $_item->getCount() ?>)</span>
<?php endif; ?>
</span>
</form>
<?php endif; ?>
</li>
<?php endforeach ?>
</ol>
Решение улучшенная версия это. Анкет Так что кредит идет и этому человеку.