如何将Magento页面标题移动到侧边栏上方

时间:2013-02-15 22:12:58

标签: xml magento php

我正在尝试在类别页面上拆分2列左侧模板。

现在它看起来像这样:

_________________________________
|          |                    |
|          | Page Title         |
|          |                    |
|(sidebar) | (main content)     |
|          |                    |
|          |                    |
|__________|____________________|

我需要在左侧菜单中向上移动类别名称和说明,并像这样填充宽度100%:

_________________________________
|                               |
| Page Title                    |
|_______________________________|
|          |                    |
|(sidebar) | (main content)     |
|          |                    |
|          |                    |
|__________|____________________|

我无法弄清楚从哪里开始。当我查看XML时,它似乎不是我可以放在其他地方的单独部分。

1 个答案:

答案 0 :(得分:3)

首先更新目录布局以使用单列模板。然后将catalog.leftnav块复制到category.products块中。

<!-- {THEME_PATH}/design/layout/catalog.xml -->
<catalog_category_default translate="label">

    <!-- Update the layout to use the single column template -->
    <reference name="root">
        <action method="setTemplate"><template>page/1column.phtml</template></action>
    </reference>

    <reference name="content">
        <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
            <!-- Move the catalog navigation block into the category view block -->
            <block type="catalog/navigation" name="catalog.leftnav" before="-" template="catalog/navigation/left.phtml"/>
        </block>
    </reference>

</catalog_category_default>

一旦catalog.leftnav块是category.products块的子节点,您就可以使用getChildHtml()方法在category.products视图模板中显示它。

<!-- {THEME_PATH}/design/template/catalog/category/view.phtml -->
<div class="category-view">

    <div class="page-header">
        ...
    </div>

    <div class="category-nav">
        <?php echo $this->getChildHtml('catalog.leftnav'); ?>
    </div>

    <div class="category-content">
        ...
        <?php echo $this->getProductListHtml(); ?>
        ...
    </div>

</div>

你喜欢的风格。希望有所帮助。