0

我正在尝试在 1000 个不同的 magento 站点上创建可配置的产品。(好吧,1000 可能不准确.. 100 万听起来更好).. 我正在编写一个集成工具,旨在将产品推入 magento 站点。该应用程序是一个SAAS,我们希望注册N个站点。

安装插件并不总是站点所有者热衷的事情,因此我避免了所有更改“后端”的建议。

我现在陷入困境的是可配置产品。我似乎找不到任何关于如何将可配置产品捆绑在一起的迹象。

我像这样在多路通话中创建父产品。

     <item SOAP-ENC:arrayType="xsd:ur-type[2]" xsi:type="SOAP-ENC:Array">
         <item xsi:type="xsd:string">catalog_product.create</item>
         <item SOAP-ENC:arrayType="xsd:ur-type[4]" xsi:type="SOAP-ENC:Array">
           <item xsi:type="xsd:string">configurable</item>
           <item xsi:type="xsd:string">40</item>
           <item xsi:type="xsd:string">99_nine_555</item>
         </item>
     </item>

然后我创建子产品

     <item SOAP-ENC:arrayType="xsd:ur-type[2]" xsi:type="SOAP-ENC:Array">
         <item xsi:type="xsd:string">catalog_product.create</item>
         <item SOAP-ENC:arrayType="xsd:ur-type[4]" xsi:type="SOAP-ENC:Array">
           <item xsi:type="xsd:string">simple</item>
           <item xsi:type="xsd:string">40</item>
           <item xsi:type="xsd:string">nine_5</item>
         </item>
      </item>

然后我尝试使用*product_link.assign*,但这没有用。有谁知道开箱即用的 api 调用允许某人创建可配置产品?

编辑


我知道这个问题似乎是别人的重复。但由于他们都没有答案,而且他们中的大多数人都年纪大了,我想也许有些事情已经改变了。或许现在有办法了。如果已回答,请在将其标记为重复之前,在评论中链接到重复。

4

1 回答 1

0

默认 api 不允许您这样做。

无论如何,通过 SOAP 执行此操作可能不是最好的主意。众所周知 SOAP 很慢,如果您想将其作为 SAAS 提供,那么速度很重要。如果你有 100 种产品就可以了,1000 种也可以,但再多的话就需要很长时间。

所以 SOAP 很慢,Magento API 本身也很慢。Magento 很慢,因为它会加载产品并调用 save() 包括所有可能不需要调用的回调。

正如评论中提到的,您能做的最好的事情是编写自己的模块,该模块将负责产品的导入/更新。

此外,我建议不要使用 SOAP,而是将 REST 用于 api。

于 2013-09-30T10:38:59.790 回答