Sélectionner plus d'un élément de navigation en couches (plusieurs cases de sélection /)
-
16-10-2019 - |
Question
Comment convertir la navigation en couches standard pour les cases à cocher d'utilisation ou plusieurs entrées de sélection pour les attributs de type menu déroulant ou multiselect ?
Par exemple, si un utilisateur sélectionne bleu et rouge pour l'attribut de couleur, la navigation en couches afficher tous les articles correspondant soit bleu OR rouge.
La solution
Il y a beaucoup d'extensions là-bas qui vous donnera cette fonctionnalité (recherche de « navigation améliorée à plusieurs niveaux »). J'ai essayé toutes les extensions ci-dessous, mais mon préféré est par Ecommerce équipe - Je l'aime pour son nature minimaliste, il ne cherche pas à en faire trop, mais est très puissant et fonctionne bien hors de la boîte. Il supporte également nuanciers comme vous l'avez décrit.
D'autres sans ordre particulier:
- http://amasty.com/improved-navigation.html
- http://www.aitoc.com/en/magentomods_layered_navigation_pro.html
- http://www.manadev.com/seo-layered-navigation-plus
- http://www.gomage.com/extensions/gomage-advanced-navigation.html
Sachez ceux-ci peuvent provoquer des conflits avec d'autres modules tiers.
Si vous êtes à la recherche principalement à faire avec nuanciers Je vous suggère de vérifier cette extension par le Tchad Morgan.
Voici un article par Inchoo de garder les filtres inutilisés visibles.
Si vous cherchez à coder vous-même alors je pense que la réponse à votre question est peut-être trop long pour ce forum. Je n'ai pas un lien vers un blog / tutoriel pour vous apprendre à le faire, mais je suggère à commencer par l'extension des blocs de navigation en couches.
Autres conseils
Si vous ne souhaitez que la conversion par défaut navigation couches pour des cases à cocher la solution est très facile et en le plaçant ici.
Modifier le code du fichier app/design/frontend/ourpackage/ourtheme/template/catalog/layer/filter.phtml
comme suit:
<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>
La solution est une version améliorée de ce . Ainsi, le crédit va à cette personne ainsi.