From 7423c3fd53926f4e8dac9ab9a4b4f65b94eaa7f7 Mon Sep 17 00:00:00 2001 From: peter-hank Date: Tue, 5 Jan 2016 20:11:19 +0100 Subject: [PATCH] Update Collection.php --- .../Product/Type/Configurable/Attribute/Collection.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/code/core/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php b/app/code/core/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php index 12ec7e2..93a3110 100755 --- a/app/code/core/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php @@ -250,8 +250,11 @@ protected function _loadPrices() $options = $productAttribute->getFrontend()->getSelectOptions(); $optionsByValue = array(); + $sortOrders = array(); + $sortOrder = 1; foreach ($options as $option) { $optionsByValue[$option['value']] = $option['label']; + $sortOrders[$option['value']] = $sortOrder++; } foreach ($this->getProduct()->getTypeInstance(true) @@ -272,7 +275,8 @@ protected function _loadPrices() 'store_label' => $optionsByValue[$optionValue], 'is_percent' => 0, 'pricing_value' => null, - 'use_default_value' => true + 'use_default_value' => true, + 'sort_order' => $sortOrders[$optionValue] ); } } @@ -301,6 +305,10 @@ protected function _loadPrices() } } } + + usort($values, function ($a, $b) { + return $a['sort_order'] > $b['sort_order']; + }); foreach ($values as $data) { $this->getItemById($data['product_super_attribute_id'])->addPrice($data);