У меня есть некоторые интригующие вопросы, связанные с пользовательскими опциями продукта: -
-
Есть ли разница между опциями и настраиваемыми параметрами? Это связано с тем, что я нашел два разных свойства для каждой информации о продукте, почти во всех связанных с продуктом модулях: -
-
options
-
custom_options
Однако существует только один класс только для Варианта продукта, который, как правило, заботится о пользовательских параметрах. Пожалуйста, кто-нибудь уточнит этот вопрос.
-
-
Я пытаюсь получить пользовательские параметры заказанного элемента, включая пользовательский вариант цены и тип цены. Проблема заключается в том, что Magento сохраняет только значение параметра для соответствующего упорядоченного элемента, а не все его детали (например, таможня опционная цена и тип цены).
Поэтому я создал объект этого классаMage_Catalog_Model_Product_Option_Value
, учитывая толькоdrop_down
Custom Option Type. Я предоставил свой код ниже, но он все еще напрасно и не дает желаемых результатов. Может кто-то исправить этот код и помочь мне?
Код для точки № 2: -
echo "<pre>";
// $collection contains the whole Order Collection
foreach ($collection as $order) {
foreach ($order->getAllItems() as $item) {
$customOptions = $item->getProductOptions();
foreach ($customOptions['options'] as $_eachOption) {
// Value ID is stored in this field "option_value"
$objModel = Mage::getModel('catalog/product_option_value')->load($_eachOption['option_value']);
// This should provide all the details of this particular Option Value as chosen by the Customer when ordering this Product, but unfortunately it doesn't
print_r($objModel->getData());
/**
* This gives the output as, without any details on Price and Price Type:-
* Array
* {
* [option_type_id] => 13014
* [option_id] => 4921
* [sku] => XBPS22
* [sort_order] => 0
* }
*/
unset($objModel);
}
}
}
echo "</pre>";
После некоторой проверки я обнаружил, что цена, связанная с каждым значением параметра, хранится в таблице базы данных catalog_product_option_type_price
, а цена, относящаяся к каждой опции, хранится в таблице базы данных catalog_product_option_price
. Таким образом, должно быть каким-то образом, как Magento выбирает соответствующие цены пользовательских опционных цен. Пожалуйста, просветите меня и исправьте приведенный выше код?
Спасибо всем, заранее!