1

我创建了一个 magento (1.7 CE) 本地模块,以在“管理”部分中将一些信息添加到“收到的订单”中显示的产品列表中。除了我没有成功替换用于按订单呈现每个产品线的模板之外,内部一切似乎都运行良好。

在 app/design/adminhtml/default/default/layout/sales.xml 我有这个代码

<adminhtml_sales_order_view>
    <reference name="head">
        <action method="addJs"><file>mage/adminhtml/giftmessage.js</file></action>
        <action method="addJs"><file>mage/adminhtml/giftoptions/tooltip.js</file></action>
    </reference>
    <reference name="content">
        <block type="adminhtml/sales_order_view" name="sales_order_edit"></block>
    </reference>
    <reference name="left">
        <block type="adminhtml/sales_order_view_tabs" name="sales_order_tabs">
            <block type="adminhtml/sales_order_view_tab_info" name="order_tab_info" template="sales/order/view/tab/info.phtml">
                <block type="adminhtml/sales_order_view_messages" name="order_messages"></block>
                <block type="adminhtml/sales_order_view_info" name="order_info" template="sales/order/view/info.phtml"></block>
                <block type="adminhtml/sales_order_view_items" name="order_items" template="sales/order/view/items.phtml">
                    <action method="addItemRender"><type>default</type><block>adminhtml/sales_order_view_items_renderer_default</block><template>sales/order/view/items/renderer/default.phtml</template></action>
                    <...

我想替换您看到的最后一行(addItemRenderer)设置的模板。

在我的模块 config.xml 我有

<adminhtml>
   <layout>
     <updates>
       <my_ext>
                <file>myext_update.xml</file>
       </my_ext>  
     </updates>
   </layout>
</adminhtml>

在 app/design/adminhtml/default/default/layout/myext_update.xml 我有

<?xml version="1.0"?>

<admin_sales_order_view>

    <reference name="left">
        <reference name="sales_order_tabs">

            <reference name="order_tab_info">

                <reference name="order_items">

                    <action method="addItemRender">
                        <type>default</type>
                        <block>adminhtml/sales_order_view_items_renderer_default</block>
                        <template>myext/sales/order/view/items/renderer/default.phtml</template>
                    </action>

                </reference>

            </reference>

        </reference>

    </reference>

</admin_sales_order_view>

显然我在 app/design/adminhtml/default/default/template/myext/sales/order/view/items/renderer/default.phtml 中有文件

但它仍然没有使用。

你有解决方案吗?

4

2 回答 2

1

经过一天的挣扎找到了解决方案......

代码和方法都很好,但是我在 myext_update.xml 中输入了要更新的句柄名称

我写

<admin_sales_order_view>

但是,就像在原始 sales.xml 中一样,句柄名称是

<adminhtml_sales_order_view>
于 2013-09-10T10:17:22.797 回答
0

实际上,这不会像您进行的那样起作用。您需要更新布局。对布局更新有一些想法也会在你的模块中渲染布局

在这里查看http://www.magentocommerce.com/design_guide/articles/intro-to-layouts

于 2013-09-05T10:13:50.987 回答