工具栏自定义位置

时间:2015-05-10 10:50:30

标签: magento magento-1.9

我从1.7到1.9自定义工具栏更新magento后出现问题。我有一个工具栏的自定义位置,它应该出现在breadcrumbs块中。 local.xml代码

<catalog_category_layered>
        <reference name="breadcrumbs">
            <block type="catalog/product_list" name="toolbar_only" template="catalog/product/list/toolbar_only.phtml">
                <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml"></block>    
                <action method="setToolbarBlockName">
                    <name>product_list_toolbar</name>
                </action>
            </block>            
        </reference>
    </catalog_category_layered>

    <catalog_category_default>
        <reference name="breadcrumbs">
            <block type="catalog/product_list" name="toolbar_only" template="catalog/product/list/toolbar_only.phtml">
                <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml"></block>    
                <action method="setToolbarBlockName">
                    <name>product_list_toolbar</name>
                </action>
            </block>            
        </reference>
    </catalog_category_default>

在breadcrumbs.phtml中<?php echo $this->getChildHtml('toolbar_only'); ?> 并在toolbar_only.phtml getToolbarHtml()?&gt; var_dump返回空字符串。 我尝试了另一种输出工具栏块的方法

<?php 
// lets get the toolbar block
$toolbar = $this->getChild('product_list')->getToolbarBlock();
// add the product collection
$toolbar->setCollection($this->getChild('product_list')->getLoadedProductCollection());
$toolbar->toHtml();
?>

但它也返回空字符串。 在自定义位置输出工具栏的正确方法是什么?谢谢

1 个答案:

答案 0 :(得分:0)

主要问题在于扩展Sugarcode_Bestsellersort,因此在xml中禁用它,我获得了快乐。现在完全正常回答。

那个local.xml

<catalog_category_layered>
        <reference name="breadcrumbs">
            <block type="catalog/product_list" name="toolbar_only" template="catalog/product/list/toolbar_only.phtml">
                <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml"></block>
                <action method="setToolbarBlockName">
                    <name>product_list_toolbar</name>
                </action>
            </block>
        </reference>
    </catalog_category_layered>

    <catalog_category_default>
        <reference name="breadcrumbs">
            <block type="catalog/product_list" name="toolbar_only" template="catalog/product/list/toolbar_only.phtml">
                <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml"></block>
                <action method="setToolbarBlockName">
                    <name>product_list_toolbar</name>
                </action>
            </block>
        </reference>
    </catalog_category_default>

toolbar_only.phtml

<?php echo $this->getToolbarHtml() ?>

breadcrumbs.phtml

<?php echo $this->getChildHtml('toolbar_only'); ?>