Получение пользовательских значений параметров продукта


В моем магазине magento я реализовал пользовательский модуль для программного добавления настраиваемых продуктов. В этих продуктах я добавил пользовательскую опцию, текстовое поле для ввода пользователем некоторых данных.

Теперь у меня есть требование получить все значения настраиваемой опции, введенные пользователями, которые приобрели конкретный продукт. (Мне нужно получить значения, используя идентификатор продукта)

Есть ли способ, которым я могу этого добиться?

Author: 7ochem, 2015-06-05

2 answers

Проверьте столбец product_options в таблице sales_flat_order_item.

Вы можете использовать коллекцию order_item и получить значение этого поля следующим образом:

$orderItems = Mage::getModel('sales/order_item')->getCollection()->addFieldToFilter('product_id', '123');

foreach($orderItems as $orderItem){
    $options = $orderItem->getProductOptions();
    var_dump($options);
}
 3
Author: kolucciy, 2015-06-05 10:08:17

Вам нужно использовать этот код, чтобы получить пользовательские параметры продукта:

    if($_product->hasOptions()) {
        foreach($_product->getOptions() as $option) {
            echo 'Option title is: ' . $option->getTitle();
            echo 'Option type is: ' . $option->getType();
            echo 'Option values:';
            foreach($option->getValues() as $value) {
                echo '- ' . $value->getTitle() . ': ' . $value->getPrice();
            }
        }
    }
 4
Author: karick, 2016-08-28 08:58:00