diff --git a/app/code/Magento/Catalog/Model/ProductLink/CollectionProvider.php b/app/code/Magento/Catalog/Model/ProductLink/CollectionProvider.php index 917a47b637cea..1536c982b40d2 100644 --- a/app/code/Magento/Catalog/Model/ProductLink/CollectionProvider.php +++ b/app/code/Magento/Catalog/Model/ProductLink/CollectionProvider.php @@ -48,9 +48,21 @@ public function getCollection(\Magento\Catalog\Model\Product $product, $type) $products = $this->providers[$type]->getLinkedProducts($product); $converter = $this->converterPool->getConverter($type); $output = []; + $realoutput = []; foreach ($products as $item) { $output[$item->getId()] = $converter->convert($item); } - return $output; + foreach ($output as $item) { + $itemPosition = $item["position"]; + if (!isset($realoutput[$itemPosition])) { + $realoutput[$itemPosition] = $item; + } + else { + $newPosition = $itemPosition+1; + $realoutput[$newPosition] = $item; + } + } + ksort($realoutput); + return $realoutput; } }