Das scheint nicht richtig bestellt zu sein, was mache ich falsch? Vorschläge?
$componentQuantityCollection = Mage::getModel('catalog/product')->getCollection();
$componentQuantityCollection->joinField('qty',
'cataloginventory/stock_item',
'qty',
'product_id=entity_id',
'{{table}}.stock_id=1',
'left');
$componentQuantityCollection->addAttributeToFilter('sku', array('in' => $componentSkus))->setOrder('sku','ASC');
Eine andere Sammlung, die nicht sortiert zu sein scheint und sich von der ersten unterscheidet:
$kitCollection = Mage::getModel('kitinventory/kitinventory')->getCollection()->addFieldToFilter('kit_sku', $sku)->setOrder('related_sku', 'DESC');
collection
sorting
easymoden00b
quelle
quelle
$kitCollection->getSelect()->order('related_sku DESC');
Sie können die Sortierreihenfolge wie folgt hinzufügen:
Weitere Informationen: http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/using_collections_in_magento
Hoffnung kann dir helfen.
quelle
->order('related_sku', 'desc');
Das Erweitern der anderen Antworten hier
$kitCollection->getSelect()->order('column DESC')
funktioniert einwandfrei, Sie können jedoch nicht mehr als eine Spalte hinzufügen. Zum Beispiel$kitCollection->getSelect()->order('column DESC, column2 ASC')
wird Fehler. Dies liegt an der Arbeit, die Magento leistet, um den Spaltennamen zu entkommen. Um dies zu umgehen, können Sie Folgendes verwendenZend_Db_Expr
:quelle
easymoden00b,
setOrder()
funktioniert aufgrund der Eav-Struktur des Produkts nicht. Wie @Sande sagt, um dieaddAttributeToSort()
Funktion zu verwenden , wegenMagento is join multiple tables for product collection.
Attribute alias name at collection
setOrder() function
funktioniert, wenn esorder expression
Feldname, SortOrder istcorrect
.Sie können sehen, wie Magento Feldalias erstellt und jedes Tabellenattribut in der Klasse Mage_Eav_Model_Entity_Collection_Abstract verknüpft
quelle
Hier ist meine Lösung zum Sortieren der Reihenfolge der Optionen im Attribut eines konfigurierbaren Produkts. Kopieren Sie zunächst Collection.php,
app/code/core/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php
zuapp/code/local/Mage/Catalog/Model/Resource/Product/Type/Configurable/Attribute/Collection.php
.Dann finden Sie diesen Code:
Und ersetzen Sie es durch diesen Code:
Auf diese Weise können Sie die Dropdown-Liste der Attributoptionen alphabetisch sortieren. Sie können die Reihenfolge auch mit umkehren
array_reverse()
oder ähnlichen Funktionen .Zuvor waren meine Attributoptionen in umgekehrter alphabetischer Reihenfolge. Jetzt sind sie in alphabetischer Reihenfolge.
quelle