Sélectionnez plusieurs éléments dans la navigation en couches (plusieurs sélections / cases à cocher)


12

Comment convertissez-vous la navigation en couches standard pour utiliser des cases à cocher ou plusieurs entrées de sélection pour les attributs de type déroulant ou multisélection ?

Par exemple, si un utilisateur sélectionne le bleu et le rouge pour l'attribut de couleur, la navigation en couches affiche tous les éléments correspondant au bleu OU au rouge.

Voir l'exemple dans la barre d'outils sur cette page:


Comment êtes-vous allé avec celui-ci? Qu'avez-vous décidé d'utiliser?
jharrison.au

@ jharrison.au .. Eh bien, j'ai changé de liste déroulante dans COLOR SWITCHER et SIZE. Ce n'est pas encore multiple.
Alizain Prasla

Réponses:


10

Il existe de nombreuses extensions qui vous offriront cette fonctionnalité (recherchez "navigation en couches améliorée"). J'ai essayé toutes les extensions énumérées ci-dessous, mais ma préférée est par l'équipe de commerce électronique - je l'aime pour sa nature minimaliste, elle n'essaie pas d'en faire trop mais est très puissante et fonctionne bien dès le départ. Il prend également en charge les échantillons de couleurs comme vous l'avez décrit.

Quelques autres sans ordre particulier:

  1. http://amasty.com/improved-navigation.html
  2. http://www.aitoc.com/en/magentomods_layered_navigation_pro.html
  3. http://www.manadev.com/seo-layered-navigation-plus
  4. http://www.gomage.com/extensions/gomage-advanced-navigation.html

N'oubliez pas que cela peut provoquer des conflits avec d'autres modules tiers.


Si vous cherchez principalement à le faire avec des échantillons de couleurs, je vous suggère de vérifier cette extension par Chad Morgan.


Voici un article d'Inchoo sur la conservation des filtres inutilisés.


Si vous cherchez à coder cela vous-même, je pense que la réponse à votre question pourrait être trop longue pour ce forum. Je n'ai pas de lien vers un article de blog / tutoriel vous expliquant comment le faire, mais je vous suggère de commencer par étendre les blocs de navigation en couches.


6
J'ai utilisé le module Amasty et je recommanderais de le vérifier. Le module Aitoc, cependant, je ne toucherais pas à un pôle 10 '... ou à aucun de leurs modules d'ailleurs.
davidalger

Le module Amasty ne fonctionnera pas avec des attributs personnalisés qui utilisent une source soutenue par un modèle eav personnalisé. C'était un problème pour nous car nos attributs sont remplis via des API externes.
greatwitenorth

8

Si vous souhaitez uniquement convertir la navigation en couches par défaut en cases à cocher, la solution est très simple et placez-la ici.

Modifiez le code du app/design/frontend/ourpackage/ourtheme/template/catalog/layer/filter.phtmlfichier 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 cela . Le mérite revient donc également à cette personne.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.