使用 Magmi Datapump 删除产品

Posted

技术标签:

【中文标题】使用 Magmi Datapump 删除产品【英文标题】:Deleting Products with Magmi Datapump 【发布时间】:2013-03-25 07:26:46 【问题描述】:

我可以使用 MAGMI 的 Web 前端成功删除产品。 但是在使用数据泵 API 时,它似乎只是忽略了 ma​​gmi:delete 列...

$this->magmi = Magmi_DataPumpFactory::getDataPumpInstance("productimport");
$this->magmi->beginImportSession("Default","create", new MagmiLogger($this));
$prods = Mage::getResourceModel('catalog/product_collection');
$count = $prods->getSize();
$i = 0;
foreach ($prods as $_p) 
    $this->magmi->ingest(array(
        'sku' => $_p->getSku(),
        'magmi:delete' => '1'
    ));

$this->magmi->endImportSession();

使用此代码,我尝试删除我的整个目录。执行时,foreach 循环通过 MAGMI 没有任何异常或错误。 Product Deleter 插件已在我选择的默认配置文件中激活。

我在这里错过了什么?

【问题讨论】:

【参考方案1】:

没关系,我选择了错误的个人资料... 当您真正选择具有激活的“Product Deleter”插件的配置文件时,它适用于发布的代码。

【讨论】:

【参考方案2】:

单击此处将 MAGMI 添加到您的模块中 -> https://magento.stackexchange.com/a/351175

启用产品删除插件。

使用 CSV

"sku","magmi:delete"
"sku1","1"
"sku2","1"

使用代码

    $importData = [];
    $configProduct = new \Magmi_ProductImport_DataPump('productimport');
    $importData['sku'] = "your Product SKU";
    $importData['magmi:delete'] = "1";
    $configProduct->beginImportSession("default", "update");
    $run = $configProduct->ingest($importData);
    $configProduct->endImportSession();

检查 db 中的 catalog_eav_attribute 表。如果 is_configurable 列不存在,则从文件 .../magmi/plugins/base/itemprocessors/configurables/magmi_configurableprocessor. 中的 getConfigurableOptsFromAsId() 函数更新以下代码。 php

    //$sql .= " JOIN $cea as cea ON cea.attribute_id=ea.attribute_id AND cea.is_global=1 AND cea.is_configurable=1";
    $sql .= " JOIN $cea as cea ON cea.attribute_id=ea.attribute_id AND cea.is_global=1";
 else 
    //$cond .= " AND ea.is_global=1 AND ea.is_configurable=1";
    $cond .= " AND ea.is_global=1";

注意:- magmi:delete : 1 是删除产品 0 是不删除产品

【讨论】:

以上是关于使用 Magmi Datapump 删除产品的主要内容,如果未能解决你的问题,请参考以下文章

Magmi 导入不会删除产品

是否有 Magmi 插件可以删除不在 CSV 文件中的产品?

Magento 1.9 magmi 导入产品图像后,当该产品从管理员保存时,它会删除图像

Magento Magmi 导入和缓存问题

Magmi 不更新产品

使用 Configurable Item 处理器导入 Magmi 可配置产品时出错