2012-01-13 78 views
2

我们正在构建一个模块,该模块允许您将多个产品按指定价格分组成一组。 鉴于这与组合产品没有太大差别,我们对其进行了扩展,所以我们不必重写太多。在Magento中扩展产品类型

问题是应该处理逻辑的模型(从Mage_Catalog_Model_Product_Type_Grouped扩展)没有使用,但核心模型是。

我的config.xml配置:

<models> 
    <promoset> 
     <rewrite> 
      <product_type>Phpro_PromoSet_Model_Product_Type_Promoset</product_type> 
     </rewrite> 
    </promoset> 
</models> 
<catalog> 
    <product> 
     <type> 
      <promoset translate="label" module="promoset"> 
       <label>Promoset bundle</label> 
       <model>promoset/product_type_promoset</model> 
       <price_model>promoset/product_price</price_model 
       <index_data_retreiver>promoset/catalogindex_data_promoset</index_data_retreiver> 
       <allow_product_types> 
        <simple/> 
        <virtual/> 
       </allow_product_types> 
       <composite>1</composite> 
      </promoset> 
     </type> 
    </product> 
</catalog> 

我自己也尝试了一些文章,这种提供config.xml文件:

<config> 
    <global> 
     <models> 
      <newproducttype> 
       <class>SeventhSense_NewProductType_Model</class> 
      </newproducttype> 
     </models> 
     <helpers> 
      <newproducttype> 
       <class>Mage_Catalog_Helper</class> 
      </newproducttype> 
     </helpers> 
     <catalog> 
      <product> 
       <type> 
        <newproducttype translate="label" module="newproducttype"> 
         <label>New Product Type</label> 
         <model>newproducttype/product_type_newproducttype</model> 
         <composite>0</composite> 
         <index_priority>15</index_priority> 
        </newproducttype> 
       </type> 
      </product> 
     </catalog> 
    </global> 
</config> 

但也有thesame结果。

我检查并仔细检查过我的模型是否在正确的位置。 promoset/product/type/promoset.php用于我自己的示例,另一个用于newproducttype/product/type/newproducttype.php。

任何人都可以指出我的错误?我正在运行Magento 1.6

更新:在Magento 1.4上,它就像一个魅力。在Magento 1.5上,它不。我正在调查这一点。如果有人会知道这可能是什么,请告诉。

+2

你为什么在'promoset'模型组执行''?应该创建它,而不是重写它。当你运行'<?php echo get_class(Mage :: getModel('promoset/product_type_promoset'))时,你会得到什么? ?>'? – Nick 2012-01-13 09:42:24

+0

我得到正确的模型,正在Phpro_PromoSet_Model_Product_Type_Promoset – Jeroen 2012-01-13 09:47:12

+0

这听起来像Nick在正确的轨道上,我期望'catalog/product_type_grouped'被重写,而不是'promoset/product_type'。 – clockworkgeek 2012-01-13 14:09:00

回答

0

我知道您提到了“分组产品”,但捆绑的产品类型允许您构建项目的“套件”,并且您可以专门为捆绑包指定价格。是否有理由不使用捆绑产品类型?

对于软件包产品,您可以按照客户可以从可用项目列表中进行选择的方式进行配置,也可以将其锁定到您定义的某个项目集合中。

更新

添加链接,从下面的评论截图(Backend ConfigurationFrontend

+0

因为这是不是处理固定项目的优雅方式。 我想要这样:http://www.musicstore.de/de_DE/EUR/Pro-Audio/Kond.-Grossmembranmikros/_SET_-Neumann-TLM-103-Profi-SET-TLM-103-Set -Pop-Stand-Kabel/art-REC164 – Jeroen 2012-01-18 11:11:11

+0

请参阅以下屏幕截图。通过正确的产品配置,我相信您可以在捆绑产品中实现您所期望的。 HTTP:// d。pr/LR2k http://d.pr/8X2c(注意后端“用户定义数量”设置与前端禁用的qty字段之间的关系) – 2012-01-20 16:02:29