Frage

Ich habe den geschichteten Navigationsblock in den Inhaltsabschnitt verschoben, aber ich kann nicht herausfinden, wie der Block positioniert wird. Ich kann es nur oben auf der Seite oder unten zeigen lassen. Ich brauche es vor der Produktliste und nach der Symbolleiste. Bisher sieht mein XML so aus:

 <reference name="content">
     <block type="catalog/layer_view" name="catalog.leftnav" before="product_list" after="product_list_toolbar" template="catalog/layer/view.phtml"/>
</reference>

Aber das scheint nicht zu funktionieren. Irgendwelche Vorschläge?

Vielen Dank

War es hilfreich?

Lösung

Der Grund, warum Ihre geschichtete Navigation nur unten oder oben auf der Seite angezeigt wird, ist, dass Sie den Block auf dem falschen Block "Level" hinzufügen.

Sie haben den Block zum Block hinzugefügt content was nur zwei direkte Kinderblöcke hat: category.products und product.tooltip. Daher können Sie Ihren Block nur zwischen diesen beiden Blöcken oder unten hinzufügen.

So verschieben Sie die geschichtete Navigation zwischen der Produktlisten -Symbolleiste und der Produktliste

Fügen Sie diesen Code Ihrem hinzu 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>

Dieser Wille Bewegung der geschichtete Navigationsblock aus der linken Spalte zur Inhaltsspalte ohne Unterricht und dergleichen neu zu erstellen. Sie können sehen, dass ich den Block als Kind des Blocks eingefügt habe product_list.

Wenn Sie jetzt die Seite anrufen, sehen Sie, dass die geschichtete Navigation überhaupt nicht angezeigt wird. Das liegt daran content Block, die product_list Block gibt standardmäßig nicht alle untergeordneten Blöcke aus. Sie müssen den Block in der Vorlagendatei wiederholen.

Kopieren app/design/frontend/base/default/template/catalog/product/list.phtml (Ersetzen Sie die Basis/Standard durch Ihr Basisthema, wenn Sie einen anderen als Ausgangspunkt verwenden) in Ihr Thema und teilen Sie Magento zu Ausgang Die geschichtete Navigation direkt nach der ersten Symbolleiste:

<?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 ?>

Sie werden so etwas bekommen und können von hier aus weitermachen:

Layered navigation position between product list toolbar and product list

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top