magento中管理产品网格中的导入按钮+文件浏览字段

时间:2010-11-02 01:12:36

标签: magento import admin product

我想在magento admin的产品网格页面的“添加产品”按钮旁边添加“导入”按钮和文件浏览按钮。

当用户选择文件并单击“导入”按钮时 我将文件上传到var / import,打开一个新选项卡并运行导入配置文件。

如何将表单(导入按钮+文件浏览字段)添加到网格顶部?

由于

3 个答案:

答案 0 :(得分:1)

使用XML布局为产品网格容器块设置自定义模板,并在那里添加自定义表单块。您需要扩展adminhtml_catalog_product_index布局句柄:

<adminhtml_catalog_product_index>
     <reference name="product_list">
         <!-- Set your custom template -->
         <action method="setTemplate"><template>path/to/your_template.phtml</template></action>
         <!-- Add your custom block -->
         <block name="import_form" as="import_form" type="your_module/form_block_name"></block>
     </reference>
</adminhtml_catalog_product_index>

然后您需要定义块和模板。您的自定义模块应该从Mage_Adminhtml_Block_Widget_Form扩展而模板应该是adminhtml/default/default/template/catalog/product.phtml的副本,但需要进行修改以显示您的自定义模块,如下例所示:

<div class="content-header">
<table cellspacing="0">
    <tr>
        <td style="width:50%;"><h3 class="icon-head head-products"><?php echo Mage::helper('catalog')->__('Manage Products') ?></h3></td>
        <td class="a-right">
            <?php echo $this->getButtonsHtml() ?>
        </td>
    </tr>
</table>
</div>
<!-- Start of Displaying of your custom import form -->
<?php echo $this->getChildHtml('import_form');?> 
<!-- End of Displaying of your custom import form -->
<?php if( !$this->isSingleStoreMode() ): ?>
<?php echo $this->getChildHtml('store_switcher');?>
<?php endif;?>
<div>
    <?php echo $this->getGridHtml() ?>
</div>

答案 1 :(得分:0)

您可以使用Mage_Adminhtml_Block_Widget_Container::addButton()执行此操作。搜索magento的代码,调用此函数以查看它应该如何使用,创建自己的容器块,使用布局文件替换产品的magento容器块,然后就完成了。

答案 2 :(得分:0)

您好 那是正确使用Mage_Adminhtml_Block_Widget_Container::addButton()方法&amp;这是语法

$data = array(
                'label' =>  'Import Zipcode Data',
                'onclick'   => "setLocation('".$this->getUrl('*/*/import')."')"
                );

    $this->addButton ('import_zip_code', $data, 0, 100,  'header', 'header');  

当然你可以有任何标签&amp;您想要的按钮ID。 setLocation允许你在点击此按钮时设置目标。