从Magento中提取自定义选项ID

时间:2011-10-13 16:09:32

标签: magento soap

我们与magento的SOAP连接运行良好 - 我们能够使用magento API提取产品信息,skus,描述等。我们已经能够使用自定义选项以编程方式成功地将产品添加到购物车,这非常有用。问题是:

为产品创建自定义选项时,会为其分配一个必须调用的唯一ID,以便将该选项值传递给购物车。例如:

www.mysite.com/magento/checkout/cart/add?product=7&qty=1&options [OPTION ID] =机器人

假设我的自定义选项ID正确,则会添加1个带有“机器人”选项的产品。这很好。

但是,我们有数百种产品,虽然它们都使用类似的自定义选项,但每个选项都有一个唯一的ID。这意味着我需要能够调用magento API并获取自定义选项详细信息(特别是选项ID),以便我们可以正确地将它们添加到购物车中。我和Varien Support(Magento)一直在来回,但是他们像往常一样没有帮助。现在,我知道我可以在Firefox或Chrome中使用firebug找到这些选项,我已经用它来测试“添加到购物车”脚本。但是,这不是一个合适的解决方案。我需要能够根据产品ID从magento中获取这些数据。

这真的很难吗?这不应该以某种方式与产品的数据联系起来吗?我在catalog_product.info上做了一个var_dump,我看到它在哪里询问是否有选项但没有提供任何细节。想法?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您是否需要获取特定产品或某些特定产品的所有选项ID?对于后者,您可以使用以下代码:

$productEntity = Mage_Catalog_Model_Product::ENTITY;
$colorAttribute = Mage::getModel('eav/config')->getAttribute($productEntity, 'color');
$colorAttribute->getId();

对于此问题中的第一个选项代码可能很有用How to get all super attribute options for a configurable item in Magento