0

15のカテゴリを作成しました。左側のナビゲーションでは、デフォルトの順序でカテゴリが必要です。

しかし、トップメニューでは、特定の並べ替え順序でカテゴリを表示する必要があります。そのために私は属性を作成し、このリンクをたどりました。

したがって、上記のリンクから、並べ替えは名前で行われますが、カスタム属性に格納されているint値で並べ替える必要があります

だから誰かを助けてください!

4

1 に答える 1

0

少し変更して、言及した関数を使用できます。getName() の代わりに getYourAttribute() を使用します。

ただし、それだけではありません。メニュー ツリーのノードの内部データ ストレージには、まだ属性がありません。そこに追加するには、カタログ オブザーバー モデルをオーバーライドするクラス、具体的には関数 Mage_Catalog_Model_Observer::_addCategoriesToMenu を作成する必要があります。この関数は、トップ メニューにカテゴリ ノードを設定します。

オーバーライドされた関数がこの手順で属性を追加していることを確認してください。

$categoryData = array(
     'name' => $category->getName(),
     'id' => $nodeId,
     'url' => Mage::helper('catalog/category')->getCategoryUrl($category),
     'is_active' => $this->_isActiveMenuCategory($category),
     'your_attribute' => $category->getYourAttribute()
);

チュートリアルが示唆するように、カスタム コードでlibファイルを変更することに不安を感じますが、これが最後の手段である場合は...

于 2013-01-22T17:58:16.040 に答える