重写或将自定义选项卡添加到magento中的销售订单视图

时间:2013-06-19 09:09:03

标签: magento magento-1.7 sales orders

我想将自定义标签添加到销售订单视图页面。我尝试以下代码但没有任何反复发生。

我的module.xml代码如下:

 <adminhtml_sales_order_view>
        <reference name="sales_order_tabs">
            <action method="addTab"><name>my_tab</name><block>mymodule/Adminhtml_Sales_Order_View_Tabs</block></action>
        </reference>
</adminhtml_sales_order_view>

我的块类是:

class Mymodule_Block_Adminhtml_Sales_Order_View_Tabs  extends Mage_Adminhtml_Block_Sales_Order_Abstract
    implements Mage_Adminhtml_Block_Widget_Tab_Interface
{

    protected function _construct()
    {
     Mage::Log("Fraud created");
    }

    /**
     * Retrieve order model instance
     *
     * @return Mage_Sales_Model_Order
     */
    public function getOrder()
    {
        return Mage::registry('current_order');
    }

    /**
     * Retrieve source model instance
     *
     * @return Mage_Sales_Model_Order
     */
    public function getSource()
    {
        return $this->getOrder();
    }


    public function getTabLabel()
    {
        return Mage::helper('sales')->__('Fraud Detection');
    }

    public function getTabTitle()
    {
        return Mage::helper('sales')->__('Fraud Detection');
    }

    public function canShowTab()
    {
        return true;
    }

    public function isHidden()
    {
        return false;
    }
}

上述代码中的任何错误?提前谢谢。

1 个答案:

答案 0 :(得分:1)

可以通过扩展/覆盖Mage_Adminhtml_Block_Sales_Order_View_Tabs来完成:

$this->addTab('testing', array(
            'label'     => Mage::helper('catalogrule')->__('my_tab'),
            'title'     => Mage::helper('catalogrule')->__('my_tab'),
            'content'   => $this->getLayout()->createBlock('your/block_name')->toHtml(),
        ));