Класс, который вам нужно расширить, это Mage_Reports_Model_Resource_Product_Ordered_Collection
, точнее, метод родительских классов Mage_Reports_Model_Resource_Product_Collection::addOrderedQty()
.
Добавление атрибута product_options
даст вам доступ ко всем параметрам, установленным для заказанных товаров.
Однако есть одна проблема:
// on the select instance:
->group('order_items.product_id')
Это объединит все записи по продукту.Я бы.Так что, если один и тот же продукт был заказан дважды, вы увидите только варианты одного из них.
Что сводится к тому, что вам, вероятно, следует построить отдельный отчет, построенный на этом, где вы также группируете по product_options
.
Когда у вас есть коллекция продуктов с опциями продукта, просто позвоните
$product->processBuyRequest(unserialize($product->getData('product_options')))
.После этого доступны все параметры, используя $product->getCustomOptions()
для получения массива или getCustomOption($code)
для получения одного.