1

API 文档描述了如何使用 rest 添加“简单产品”:http: //www.magentocommerce.com/api/rest/Resources/Products/products.html

但是可配置产品呢?我们正在使用 T 恤,我们允许用户选择尺寸的唯一方法是创建可配置的产品,这就是我们需要它的原因。

至于使用 API 的原因,我们将有一个桌面应用程序在 magento 上创建/更新产品。

提前致谢。

4

3 回答 3

0

这应该工作

{
  "cart_item": {
    "quote_id": 7,
    "sku": "WJ01",
    "qty": 1,
    "product_option": {
      "extension_attributes": {
        "configurable_item_options": [
          {
            "option_id": "93",
            "option_value": 58
          },
          {
            "option_id": "141",
            "option_value": 169
          }
        ]
      }
    }
  }
}
于 2017-03-16T07:20:49.697 回答
0

虽然这个问题很老了。但是因为我目前正在从事一项类似的任务,即在 Magento 1.9.x 中创建可配置产品并将这些产品与简单产品相关联。

例如,对于 Magento 版本 1.9.2.4,答案在代码中:

// file: app/code/core/Mage/Catalog/Model/Api2/Product/Rest/Admin/V1.
// line: 149

if ($type !== 'simple') {
        $this->_critical("Creation of products with type '$type' is not implemented",
            Mage_Api2_Model_Server::HTTP_METHOD_NOT_ALLOWED);
    }

我想没有办法用自己的方法扩展 API。

于 2017-06-14T16:09:02.503 回答
-3

Magento API 在 1.7.0.0 之前非常慢,例如每 1-2 秒甚至更长的 1 个简单产品保存(插入)。没有关联产品的可配置产品需要更长的时间来保存。试试 Magmi http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Magmi_Wiki。它使用原始查询每秒插入 20 个产品。它没有 1.7.* 的更新,而且似乎不会很快更新。

使用它的 API 而不是 CSV 方式。 http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Magmi_Datapump_API

$dp->ingest($product_data);

您的代码必须创建可配置属性(具有“用于创建可配置产品”=>“是”的属性,如大小和颜色)。事实上,所有属性都必须在使用 admin 或您的代码中的 ingest() 之前创建,这相当容易。好的部分是 Magmi 将添加/更新新的选项值(X,XL,...)。

Magmi 的代码可能看起来不像 Magento 的代码,但总的来说它做得很好。

不仅出于显而易见的原因,还需要快速导入脚本。在将数据添加到 Magento 之前,通常需要对数据进行清理和结构化。因为有很多数据并且并非所有数据都与预期模式匹配,所以您会遇到一些错误,脚本会中断并添加损坏的产品。如果您需要添加 10k 个产品,则至少需要 3-4 小时,可能会更长。现在想象一下,您会注意到 2 小时后出现的第一件事是错误的,因为在脚本完成之前您无法知道数据是否已正确添加。

于 2012-06-25T01:02:25.977 回答