3

我以编程方式在 Magento 中添加了一个捆绑产品,使用简单产品的所有选项/属性以及使用专门用于捆绑选项的 3 种方法:-

  1. setBundleOptionsData()
  2. setBundleSelectionsData()
  3. setCanSaveBundleSelections()

结果是新添加的捆绑产品在管理部分显示得很好,并采用了以下属性的一些默认值:-

  1. sku_type
  2. 重量类型
  3. 装运类型
  4. price_view
  5. 价格类型

但是,这个捆绑产品根本没有显示在前端,我不知道为什么。可以请人帮我吗?我试过搜索但无济于事。请任何人建议我做错了什么?

我还需要控制 Bundle Product 的上述特殊属性,以便在以编程方式插入期间也可以修改它们。任何人都可以在这一点上帮助我吗?

任何帮助是极大的赞赏。

4

1 回答 1

2

经过相当多的测试,我在其中找到了一些方法。
如果你看得很清楚“saveAction()”方法,在“Adminhtml”模块的“ProductController.php”页面中,你会发现有一行“ $product->save();”。

如果你对这个“save()”方法进行了一些研究,你会看到 Magento 正在使用一些“setData()”方法来处理简单产品的属性。

所以如果你使用“price”、“weight”、“sku”、“name”、“description”、“short_description”等字段作为一维数组,你只需要添加Bundle所需的属性将产品添加到此数组列表中,Magento 将完成剩下的工作。

所以我的意思是该数组将包含以下简单的元素:-

Array
(
  ['name'] => 'simple',
  ['description'] => 'test',
  ['short_description'] => 'simple test',
  ['sku_type'] => 0,
  ['sku'] => 'simple01',
  ['weight_type'] => 1,
  ['weight'] => 12,
  ['price_type'] => 1,
  ['price'] => 250,
  ['shipment_type'] => 0
)

现在你需要通过 " setData()" 方法传递这个数组,然后你就去宾果游戏了。

请记住,如果您相信,Magento 真的很漂亮,否则它会很苛刻和粗鲁。
希望能帮助到你!

于 2010-06-28T15:37:59.083 回答