diff --git a/magmi/plugins/base/itemprocessors/configurables/magmi_configurableprocessor.php b/magmi/plugins/base/itemprocessors/configurables/magmi_configurableprocessor.php index eaaad0ee..025b1228 100644 --- a/magmi/plugins/base/itemprocessors/configurables/magmi_configurableprocessor.php +++ b/magmi/plugins/base/itemprocessors/configurables/magmi_configurableprocessor.php @@ -289,6 +289,16 @@ public function processItemAfterId(&$item, $params = null) } $idx++; } + + // Delete attributes not in csv. + $ea = $this->tablename("eav_attribute"); + $confoptsPlaceholders = implode(',', array_fill(0, count($confopts), '?')); + $sql = "DELETE `$cpsa` FROM `$cpsa` " + . "JOIN `$ea` ON `$cpsa`.`attribute_id` = `$ea`.`attribute_id` " + . "WHERE `$cpsa`.`product_id` = ? AND `$ea`.`attribute_code` NOT IN ($confoptsPlaceholders)"; + $params = array_merge(array($pid), $confopts); + $this->delete($sql, $params); + unset($confopts); switch ($matchmode) { case "none":