Я также столкнулся с этим типом проблемы; также много разыскивал, и в результате я нашел эту ветку, но без ответов .. до сих пор нет ответов !.
К сожалению, похоже, что getAssociatedProducts () возвращает только массив ассоциативного дерева вместо обычной коллекции ProductCollection, у которой есть тот метод (addAttributeToSort), который нам нужен.
Это немного хакерски, но вместо этого я сделал:
<?php
foreach($_associatedProducts as $_item) {
$index[$_item->getAttributeText('my_attribute')] = $_item;
}
ksort($index);
?>
В результате мы получим ассоциативный массив, отсортированный по ключу. затем мы можем использовать это и продолжить отображение связанных продуктов следующим образом:
<table class="data-table grouped-items-table" id="super-product-table">
<?php foreach($index as $_item) ?>
<tr>
<td><?= $_item->getName() ?></td>
<td><?= $this->getPriceHtml($_item, true) ?></td>
<!-- etc.... some other stuff you want to display-->
</tr>
<?php endforeach; ?>
</table>
Не очень хорошее решение, хотя, хотя и неплохо. работает для меня! Если у кого-то есть более элегантное решение, я бы тоже хотел его увидеть! : D ура.