0

カタログ製品の下にカスタムタブを作成しました。タブは正常に機能しますが、タブをクリックすると、ブロックのテンプレートが読み込まれません。入力した内容をエコーし​​ますが、テンプレートをフェッチしていません。この関数をクラスで記述しますHTC_Csvpricing_Block_Adminhtml_Catalog_Product_TabextendsMage_Adminhtml_Block_Templateimplements Mage_Adminhtml_Block_Widget_Tab_Interface

public function _construct()
{
    parent::_construct();
    echo "I m here";
    $this->setTemplate('csvpricing/tab.phtml');
}

ここに私がapp/design / adminhtml / default / default / layout/csvpricing.xmlに書いたものがあります

<csvpricing_adminhtml_csvpricing_index>
    <reference name="content">
        <block type="csvpricing/adminhtml_csvpricing" name="csvpricing" />
    </reference>
</csvpricing_adminhtml_csvpricing_index>

<adminhtml_catalog_product_edit>
    <reference name="product_tabs">
        <action method="addTab">
            <name>csvpricing_tab</name>
            <block>csvpricing/adminhtml_catalog_product_tab</block>
        </action>
    </reference>
</adminhtml_catalog_product_edit> 

私が欠けているものを教えてください。

ありがとう

4

1 に答える 1

0

次のように実行できます:Module config.xml

<config>
    <adminhtml>
        <layout>
            <updates>
                <your_module>
                    <file>your-module.xml</file>
                </your_module>
            </updates>
        </layout>
    </adminhtml>
</config>

/app/design/adminhtml/default/default/layout/your-module.xmlにレイアウトXMLを作成します。

<?xml version="1.0"?>
<layout>
    <adminhtml_catalog_product_edit>
        <reference name="product_tabs">
            <action method="addTab">
                <name>your_module_some_tab</name>
                <block>your_module/adminhtml_catalog_product_tab</block>
            </action>
        </reference>
    </adminhtml_catalog_product_edit>
</layout>

{your_module}/Block/Adminhtml/Catalog/Product/Tab.phpにタブブロックを作成します。

class Your_Module_Block_Adminhtml_Catalog_Product_Tab 
    extends Mage_Adminhtml_Block_Template
    implements Mage_Adminhtml_Block_Widget_Tab_Interface
{
    /**
     * Set the template for the block
     */
    public function _construct()
    {
        parent::_construct();

        $this->setTemplate('catalog/product/tab/some-tab.phtml');
    }

    /**
     * Retrieve the label used for the tab relating to this block
     *
     * @return string
     */
    public function getTabLabel()
    {
        return $this->__('Some Tab');
    }

    /**
     * Retrieve the title used by this tab
     *
     * @return string
     */
    public function getTabTitle()
    {
        return $this->__('Some Tab');
    }

    /**
     * Determines whether to display the tab
     * Add logic here to decide whether you want the tab to display
     *
     * @return bool
     */
    public function canShowTab()
    {
        return true;
    }

    /**
     * Stops the tab being hidden
     *
     * @return bool
     */
    public function isHidden()
    {
        return false;
    }
}

モジュールにまだ翻訳がない場合は、翻訳をサポートするデータヘルパーを作成する必要があります。

/app/design/adminhtml/default/default/template/catalog/product/tab/some-tab.phtmlにタブテンプレートを作成します。

<div class="entry-edit">
    <div class="entry-edit-head">
        <h4>Some Heading</h4>
    </div>
    <div class="fieldset fieldset-wide">
        <div class="hor-scroll">
            <!-- your content here -->
        </div>
    </div>
</div>
于 2013-02-05T10:21:13.263 に答える