magento在页面左侧边栏上显示类别

mis*_*cus 5 magento categories

我无法设法在页面上显示左侧的类别.我选择了设计下的页面 - 布局为3列,右侧显示正常但左侧没有任何内容.magento的新手,所以我不确定在模板中我必须寻找的文件.它是一个自定义模板安装,所以我到目前为止:

app/design/frontend/default/f001/template/
Run Code Online (Sandbox Code Playgroud)

但现在不确定是否要查看目录或paeg文件夹

小智 13

转到布局Xml文件夹..

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

打开此Xml文件并粘贴此代码.

<reference name="left">
            <block type="catalog/navigation" name="catalog.leftnav" template="catalog/navigation/left_nav.phtml" />
</reference>
Run Code Online (Sandbox Code Playgroud)

进一步打开这个文件..

/app/design/frontend/default/default/template/catalog/navigation/left_nav.phtml
Run Code Online (Sandbox Code Playgroud)

粘贴此代码:

 <?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";
    }
}
?>
Run Code Online (Sandbox Code Playgroud)


dan*_*het 0

要将类别从右侧边栏移动到左侧边栏,您需要执行以下操作:

(1) 打开 app/design/frontend/default/f001/layout/ 并找到一个名为 local.xml 的文件 -如果不存在,则创建它。

将以下内容粘贴到里面并保存。

<?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>
Run Code Online (Sandbox Code Playgroud)

(2)打开app/design/frontend/default/f001/layout/catalog.xml

在“类别默认布局”内,查找类似的内容并将此行注释掉(如下所示)-

<!-- <reference name="right">
        <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/>
    </reference> -->
Run Code Online (Sandbox Code Playgroud)

假设您使用的是 3 列,这将阻止类别显示在两个侧边栏上。

正如您可能已经猜到的,参考名称指的是每个侧边栏。您需要确保“left”的引用名称包含左侧类别,并确保右侧不包含(在布局中控制,而不是模板文件中控制)。