2011-12-05 11 views
5

Non riesco a mostrare su una pagina, sul lato sinistro le categorie. Ho selezionato per la pagina in Design - layout a 3 colonne, La parte destra mostra bene ma nulla sul lato sinistro. Nuovo in Magento quindi non sono sicuro in quale file del modello devo cercare. E 'un modello personalizzato installato in modo ho ottenuto finora:magento mostra le categorie nella barra laterale sinistra in una pagina

app/design/frontend/default/f001/template/ 

ma non è sicuro ora se a guardare sotto catalogo o cartelle paeg

+1

Che tipo di "pagina" è questo: categoria di prodotto, CMS, ecc? Qual è il percorso della pagina nel browser? Se si tratta di un URL SEF, guarda il sorgente della pagina nel tuo browser e rispondi con la 1a classe dal tag ''. – benmarks

+0

Ciao @misulicus ... hai capito chiaramente ah? –

risposta

0

Per spostare le categorie dalla barra laterale destra alla barra laterale sinistra' È necessario effettuare questa operazione:

(1) Aprire app/design/frontend/default/f001/layout/e trovare un file chiamato local.xml - Se non esiste, crearlo.

Incollare quanto segue all'interno e salvare.

<?xml version="1.0" encoding="UTF-8"?> 
<layout> 
<default> 
<!-- Left Categories Begin--> 
    <reference name="left"> 
     <block type="catalog/navigation" name="catalog.leftnav" before="-" template="catalog/navigation/left.phtml"/> 
    </reference> 
<!-- Left Categories End--> 
</default> 
</layout> 

(2) Aprire app/design/frontend/default/F001/layout/catalog.xml

Inside "aspetto di una categoria di default", cercare qualcosa di simile e commenta questa linea (in questo modo) -

<!-- <reference name="right"> 
     <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/> 
    </reference> --> 

che impediscono alle categorie dalla visualizzazione su entrambe le barre laterali, supponendo che si sta utilizzando una colonna 3.

Il nome di riferimento, come si potrebbe immaginare, si riferisce a ciascuna barra laterale. Dovrai assicurarti che il nome di riferimento per "sinistra" contenga le categorie a sinistra e assicurati che non sia corretto (controllato nel layout, non nei file modello).

+0

Come creare cetegorie separate sia nella barra superiore che nella barra laterale sinistra ... come in alto dovrei avere categorie importate magento e nella barra laterale di sinistra dovrei avere categorie 'Sfoglia per' personalizzate ... –

1

Vai al formato cartella cioè

app/design/frontend/default/f001/layout/ 

aprire qualsiasi file XML per esempio catalog.xml e sotto i tag

<default> 

</default> 

incollare questo codice

<reference name="left"> 
     <block type="catalog/navigation" name="left_categories_nav" before="-" template="catalog/navigation/left.phtml"/> 
    </reference> 

come questo

<default> 
    <reference name="left"> 
     <block type="catalog/navigation" name="left_categories_nav" before="-" template="catalog/navigation/left.phtml"/> 
    </reference> 
</default> 

Ma assicuratevi di commentare questo blocco sulla linea numero 79.

<!-- <reference name="left"> 
    <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/> 
</reference> --> 
13

Vai alla cartella layout Xml ..

Blockquote /app/design/frontend/default/default/layout/catalog.xml

Apri questo file XML e incolla questo codice.

<reference name="left"> 
      <block type="catalog/navigation" name="catalog.leftnav" template="catalog/navigation/left_nav.phtml" /> 
</reference> 

aprire ulteriormente questo file ..

/app/design/frontend/default/default/template/catalog/navigation/left_nav.phtml 

incolla questo codice:

<?php 
$obj = new Mage_Catalog_Block_Navigation(); 
$store_cats = $obj->getStoreCategories(); 
$current_cat = $obj->getCurrentCategory(); 
$current_cat = (is_object($current_cat) ? $current_cat->getName() : ''); 

foreach ($store_cats as $cat) { 
    if ($cat->getName() == $current_cat) { 
     echo '<li class="current"><a href="'.$this->getCategoryUrl($cat).'">'.$cat->getName()."</a>\n<ul>\n"; 
     foreach ($obj->getCurrentChildCategories() as $subcat) { 
      echo '<li><a href="'.$this->getCategoryUrl($subcat).'">'.$subcat->getName()."</a></li>\n"; 
     } 
     echo "</ul>\n</li>\n"; 
    } else { 
     echo '<li><a href="'.$this->getCategoryUrl($cat).'">'.$cat->getName()."</a></li>\n"; 
    } 
} 
?> 
+0

Questo il codice funziona bene tranne che per visualizzare gli URL corretti da utilizzare: ' ... ' – marcinsdance

0
Add this in left static block 
<p>Left side bar {{block type="core/template" template="catalog/navigation/left.phtml"}}</p> 

add left.phtml in yourtemplatename/template/catalog/navigation/left.phtml 
<?php 
$obj = new Mage_Catalog_Block_Navigation(); 
$store_cats = $obj->getStoreCategories(); 
$current_cat = $obj->getCurrentCategory(); 
$current_cat = (is_object($current_cat) ? $current_cat->getName() : ''); 

foreach ($store_cats as $cat) { 
    if ($cat->getName() == $current_cat) { 
     echo '<li class="current"><a href="'.$this->getCategoryUrl($cat).'">'.$cat->getName()."</a>\n<ul>\n"; 
     foreach ($obj->getCurrentChildCategories() as $subcat) { 
      echo '<li><a href="'.$this->getCategoryUrl($subcat).'">'.$subcat->getName()."</a></li>\n"; 
     } 
     echo "</ul>\n</li>\n"; 
    } else { 
     echo '<li><a href="'.$this->getCategoryUrl($cat).'">'.$cat->getName()."</a></li>\n"; 
    } 
} 
?> 
Problemi correlati