Spostare blocco di navigazione più livelli tra lista dei prodotti barra degli strumenti e lista dei prodotti
-
16-10-2019 - |
Domanda
Ho spostato il blocco di navigazione a strati nella sezione contenuti però io non riesco a capire come posizionare il blocco. Posso solo farlo per mostrare in cima alla pagina o in fondo. Ne ho bisogno prima della quotazione del prodotto e dopo la barra degli strumenti. Finora il mio aspetto XML come questo:
<reference name="content">
<block type="catalog/layer_view" name="catalog.leftnav" before="product_list" after="product_list_toolbar" template="catalog/layer/view.phtml"/>
</reference>
Ma questo non sembra funzionare. Qualche suggerimento?
Grazie
Soluzione
Il motivo per la vostra navigazione più livelli mostra solo nella parte inferiore o nella parte superiore della pagina è che si aggiunge il blocco a "livello" sbagliato blocco.
È aggiunto il blocco alla content
blocco che ha solo due blocchi figli diretti: category.products
e product.tooltip
. Pertanto si può solo aggiungere il blocco in alto, tra questi due blocchi o in basso.
Come spostare la navigazione a strati tra la barra degli strumenti elenco dei prodotti e l'elenco dei prodotti
Aggiungi il codice al tuo Layout XML :
<?xml version="1.0"?>
<layout version="0.1.0">
<catalog_category_layered>
<reference name="left">
<action method="unsetChild"><alias>catalog.leftnav</alias></action>
</reference>
<reference name="product_list">
<action method="insert"><blockName>catalog.leftnav</blockName></action>
</reference>
</catalog_category_layered>
</layout>
Questa volontà Sposta ??strong> il blocco di navigazione a strati dalla colonna di sinistra alla colonna di contenuti senza classi ricreare e simili. Si può vedere ho inserito il blocco come un bambino del product_list
blocco.
Se si chiama la pagina ora si vedrà che la navigazione a strati non viene visualizzato affatto. Questo perché contrari al blocco content
, il blocco product_list
non emette tutti i blocchi figlio per impostazione predefinita. Bisogna eco il blocco te stesso nel file di modello.
Copia app/design/frontend/base/default/template/catalog/product/list.phtml
(sostituzione di base / default con il tema di base se si utilizza un altro come punto di partenza) al vostro tema e dire Magento a uscita ??strong> la navigazione a strati direttamente dopo la prima barra degli strumenti:
<?php if(!$_productCollection->count()): ?>
<p class="note-msg"><?php echo $this->__('There are no products matching the selection.') ?></p>
<?php else: ?>
<div class="category-products">
<?php echo $this->getToolbarHtml() ?>
<?php echo $this->getChildHtml('catalog.leftnav'); /* THIS IS THE NEW LINE */ ?>
<?php // List mode ?>
Si otterrà qualcosa di simile e può andare a partire da qui: