2012-03-18 6 views
2

DBにカスタムオプションを追加する特定のフィールドがあります。私はそれを追加するためにこのスレッドに従います - http://www.magentocommerce.com/boards/viewthread/73036/P15/Magentoで特定のカスタムオプションフィールドを取得する方法

重量の代わりに私は注文が置かれるときに私は船社に渡したい2つの他のフィールドを使用します。私はこれを行うモジュールを持ち、観察者には、私はこのコードを持っている:私はオプション値とIDを選択することができます

$orderItems = $order->getItemsCollection(); 

foreach ($orderItems as $item) { 

$optionsArr = $item->getProductOptions(); 

foreach ($optionsArr['options'] as $option) { 
    if($option['label'] !='' && $option['value'] !='') { 

    $optionValue = $option['value']; // OK 
    $optionId = $option['option_id']; // OK 
    $optionWeight = $option['weight']; // NOT WORKING 
    $optionMyCustomField = $option['my_custom_field']; // NOT WORKING 

    } 
} 
} 

この道を。

DBからカスタムフィールドを取得するにはどうすればよいですか?

答えて

3

は交換してください:

$optionWeight = $option['weight']; // NOT WORKING 
$optionMyCustomField = $option['my_custom_field']; // NOT WORKING 

で:

$optionWeight = $item->getWeight(); 
$optionMyCustomField = $item->getMyCustomField(); 

あなたもあなたのforeachループの外にそれらを取ることができます。

+1

選択されたオプション行(catalog_product_option_type_valueテーブル)のフィールドを取得する必要があるので、意味がありません。選択されたオプションの重みで、製品ではありません。上のコードを見てください - 私はそれをさらに追加しました – venz

関連する問題