0

カスタム製品タイプを作ろうとしています。仮想製品タイプを拡張します。Magento のバックエンドに製品を追加でき、追加されます。しかし.. どの製品タイプを拡張するかは問題ではありません。私は常に「シンプルな」製品設計を目にします。より良いのは、仮想製品設計です。

config.xml

<catalog>
        <product>
            <type>
                <iasoproduct translate="label" module="catalog">
                    <label>Iaso Product</label>
                    <model>iasoproduct/product_type_iaso</model>
                    <is_qty>1</is_qty>
                    <index_data_retreiver>iasoproduct/catalogIndex_data_iaso</index_data_retreiver>
                    <price_model>iasoproduct/product_price</price_model>
                    <composite>0</composite>
                </iasoproduct>
            </type>
            </product>        
    </catalog>

データ\Iaso.php

class Zimzap_IasoProduct_Model_CatalogIndex_Data_Iaso extends Mage_CatalogIndex_Model_Data_Virtual
{
    public function getTypeCode()
    {
        return Zimzap_IasoProduct_Model_Product_Type::TYPE_IASO_PRODUCT;
    }
}

商品\種類\Iaso.php

class Zimzap_IasoProduct_Model_Product_Type_Iaso extends Mage_Catalog_Model_Product_Type_Virtual
{


}

商品\価格.php

class Zimzap_IasoProduct_Model_Product_Price extends Mage_Catalog_Model_Product_Type_Price
{

}

製品\Type.php

class Zimzap_IasoProduct_Model_Product_Type extends Mage_Catalog_Model_Product_Type_Virtual
{
    const TYPE_IASO_PRODUCT = 'iasoproduct';
}

私は何が恋しいですか?!??

4

1 に答える 1

2

メソッドを見るMage_Catalog_Helper_Product_View::initProductLayout($product, $controller)と、magento が追加のレイアウト更新ハンドルをレイアウトに追加する方法がわかります。PRODUCT_TYPE_iasoproductそのため、ハンドルを使用して新しいレイアウトの更新を作成する必要があります。レイアウトを見てください。ここでハンドルcatalog.xmlを見つけることができPRODUCT_TYPE_configurableます。独自のレイアウト更新を作成するための参照として使用してください。

于 2012-03-13T09:09:09.073 に答える