如何在Magento中使用XML在块之前或之后添加内容

4
我想使用XML文件在块中添加内容。请查看下面的图片。

enter image description here

我已经添加了下面的代码,但它正在覆盖内容。(我想要追加)
<reference name="order_items">
      <action method="addColumnRender">
         <column>name</column>
         <block>adminhtml/sales_items_column_name</block>
         <template>sales/items/column/name.phtml</template>
      </action> 
</reference> 

我已检查核心文件,它们是通过编程方式创建区块的。

我已经阅读了这篇文章,您能告诉我在我的情况下会有什么改变吗? 我尝试了https://dev59.com/S2Yq5IYBdhLWcg3wcgLq链接中的代码,但它没有起作用。 - Chetan Khandla
1个回答

3

据我所知,您可以尝试以下方法:

<adminhtml_sales_order_view>
<reference name="order_items">
    <block type="core/template" name="test-1" template="test/template.phtml" after="sales_order_edit"/>
    <block type="core/template" name="test-2" template="test/template.phtml" before="sales_order_edit"/>
</reference>

在模板文件中,您可以将块放置在任何您想要的位置:

app\design\adminhtml\default\default\template\sales\order\view\tab\info.phtml

我已经检查了代码,它使用 'addColumnRender' 创建块。 - Chetan Khandla
好的,但是在扩展中,你不能覆盖那个文件来调用你的块吗? - Jaydeep Pandya
我已经检查了链接,但是无法找到块的名称。 - Chetan Khandla
我已经在".phtml"文件中添加了以下代码: `<?php $_item = $this->getItem(); $block = $this->getLayout() ->createBlock('adminhtml/sales_items_column_name') ->setTemplate('sales/items/column/name.phtml') ->setRenderedBlock($this);echo $block->setItem($_item)->toHtml(); $option = $_item->getProductOptions(); if(isset($option['customizer_data'])){ $results = @unserialize($option['customizer_data']); $imagePathFull = $results['image']['url']; echo "<a target='_blank' href='{$imagePathFull}'>查看自定义图像</a>"; }` - Chetan Khandla
它能够工作,但我认为这不是添加内容的正确方式。 - Chetan Khandla
显示剩余6条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接