1

ヘッド ナビゲーションのカテゴリと子カテゴリを名前順に並べてみます。そうするための少なくとも 3 つの異なる方法を見つけましたが、どれもうまくいかないようです。

  1. ->setOrder('name', Varien_Db_Select::SQL_ASC)" " を Category.phpに追加します
  2. ->setOrder('name', 'asc')" " を Category.phpに追加します
  3. ->addAttributeToSort('name', Varien_Db_Select::SQL_ASC)" " を Category.phpに追加します
  4. ->addAttributeToSort('name', 'asc')" " を Category.phpに追加します
  5. SQLクエリでソートするとうまくいくかもしれませんが、私の場合は実際のオプションではありません

そして、注目に値しない他のいくつか...

階層化されたナビゲーションの場合、配列を並べ替えることがわかりましたが、ヘッドナビゲーションではできません。いろいろとヒントをいただけてありがたいです…

THX!

4

1 に答える 1

0

これは、コレクションが->load()-を使用してロードされるためです。その後、コレクションを変更することはできません。並べ替える最良の方法は、ドラッグアンドドロップを使用して管理者で並べ替えることです。それがオプションでない場合は、カタログコレクションイベント_load_beforeをフックする必要があり
app/code/core/Mage/Catalog/Model/Resource/Category/Flat/Collection.php
ます(フラットカタログを使用している場合)が、それ以降は適切な方法ではありません。カテゴリリストの表示に影響を与え、管理者の並べ替えを使用できなくなります。時間をかけて、管理者で適切に並べ替えてください。

于 2012-09-27T11:52:53.463 に答える