Question

I want to remove one custom value from the product custom option, I've following code for it but it's not working

$obj = Mage::getModel('catalog/product');
$product_id = $obj->getIdBySku("mysku");
$product = $obj->load($product_id);
foreach ($product->getOptions() as $o) {
    $values = $o->getValues();
    foreach ($values as $v) {
      if($v->getData('default_title') == "Something"){
          $optionValue=Mage::getModel('catalog/product_option_value')->load($v->getData('option_id'));
          $optionValue->delete();
      }
    }
}
Was it helpful?

Solution

Well, I've resolved by myself, By following

$obj = Mage::getModel('catalog/product');
$product_id = $obj->getIdBySku("mysku");
$product = $obj->load($product_id);
foreach ($product->getOptions() as $o) {
    $values = $o->getValues();
    foreach ($values as $v) {
      if($v->getData('default_title') == "Something"){
         $product->setCanSaveCustomOptions(true);
         $v->delete();
      }
    }
}
Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange
scroll top