API 文档描述了如何使用 rest 添加“简单产品”:http: //www.magentocommerce.com/api/rest/Resources/Products/products.html
但是可配置产品呢?我们正在使用 T 恤,我们允许用户选择尺寸的唯一方法是创建可配置的产品,这就是我们需要它的原因。
至于使用 API 的原因,我们将有一个桌面应用程序在 magento 上创建/更新产品。
提前致谢。
API 文档描述了如何使用 rest 添加“简单产品”:http: //www.magentocommerce.com/api/rest/Resources/Products/products.html
但是可配置产品呢?我们正在使用 T 恤,我们允许用户选择尺寸的唯一方法是创建可配置的产品,这就是我们需要它的原因。
至于使用 API 的原因,我们将有一个桌面应用程序在 magento 上创建/更新产品。
提前致谢。
这应该工作
{
"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
}
]
}
}
}
}
虽然这个问题很老了。但是因为我目前正在从事一项类似的任务,即在 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。
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 小时后出现的第一件事是错误的,因为在脚本完成之前您无法知道数据是否已正确添加。