public function getOptionSku($product = null, $sku='')
{
$skuDelimiter = '-';
if(empty($sku)){
//$sku = $this->getProduct($product)->getData('sku'); //注释掉
}
if ($optionIds = $this->getProduct($product)->getCustomOption('option_ids')) {
foreach (explode(',', $optionIds->getValue()) as $optionId) {
if ($option = $this->getProduct($product)->getOptionById($optionId)) {
$confItemOption = $this->getProduct($product)->getCustomOption('option_'.$optionId);
$group = $option->groupFactory($option->getType())
->setOption($option)->setListener(new Varien_Object());
if ($optionSku = $group->getOptionSku($confItemOption->getValue(), $skuDelimiter)) {
$sku = $optionSku; // $sku .= $skuDelimiter . $optionSku;
}
if ($group->getListener()->getHasError()) {
$this->getProduct($product)
->setHasError(true)
->setMessage(
$group->getListener()->getMessage()
);
}
}
}
}
return $sku;
}
app/code/core/Mage/Catalog/Model/Product/Type Abstract.php