2013-02-03 54 views
1

我想添加具有唯一標識的自定義選項到產品。我已經使用這個代碼添加一些自定義選項的產品,其做工精細如何通過具有唯一選項ID的代碼在magento中添加自定義選項?

$options_print[$sku] = array(
        'title' => 'Select Size', 
        'type' => 'drop_down', 
        'is_require' => 0, 
        'sort_order' => 0, 
        'values' => array() 
       ); 
       $options_print[$sku]['values'][] = array(
        'title' => '5', 
        'price' => 0.00, 
        'price_type' => 'fixed', 
        'sku' => '', 
        'sort_order' => '1' 
       ); 
       $options_print[$sku]['values'][] = array(
        'title' => '6', 
        'price' => 0.00, 
        'price_type' => 'fixed', 
        'sku' => '', 
        'sort_order' => '1' 
       ); 

我的問題是,我想分配唯一的ID下拉選項「尺寸選擇」,所以我可以使用該ID只要檢索我需要通過代碼,但似乎沒有選擇分配'sku'或'option_id'給它。

Magento的是諸如自動分配選項ID吧,

Array 
(
    [label] => Select Size 
    [value] => 10 
    [print_value] => 10 
    **[option_id] => 267** 
    [option_type] => drop_down 
    [option_value] => 729 
    [custom_view] => 
) 

我有沒有對其進行控制,選項代碼基礎上保持與每個產品改變,所以其我很難檢索該選項的值了ID。

有什麼想法?

回答

0
$productSku = $_product->getSku(); 
$product = Mage::getModel('catalog/product'); 
$productId = $product->getIdBySku($productSku); 

$product = Mage::getModel("catalog/product")->load($productId); 

$attVal = $product->getOptions(); 

$optStr = ""; 

// loop through the options 
foreach($attVal as $optionKey => $optionVal) { 

    //$optStr .= "<br/>"; 

    //$optStr .= $optionVal->getTitle().": "; 

    $optStr .= "<select style='display:block; clear:both;' name='options[".$optionVal->getId()."]'>"; 

    foreach($optionVal->getValues() as $valuesKey => $valuesVal) { 
     $optStr .= "<option value='".$valuesVal->getId()."'>".$valuesVal->getTitle()."</option>"; 
    } 

    $optStr .= "</select>"; 

} 

echo($optStr); 
相關問題