0

ストアカテゴリのリストがありますが、1つを除いてすべてが正常に機能しています。カテゴリのリストで、「ナビゲーションメニューに含める=いいえ」として設定されているものを省略したいと思います。

この時点で、この属性がロードされていないことはわかりますが、フィルターを配置する場所を見つけるのに苦労しています。現在、次の方法でカテゴリリストを取得しています。

<?php $_helper = Mage::helper('catalog/category') ?>
<?php $_categories = $_helper->getStoreCategories() ?>

に続く:

<?php foreach ($_categories as $_category) : ?>
<?php $_category = Mage::getModel('catalog/category')->load($_category->getId()) ?>
...
...

この時点で、カテゴリオブジェクトを希望どおりに作成できます。しかし、これらのオブジェクトに対してデバッグを実行すると、「include_in_menu」属性がリストされません。

4

1 に答える 1

0

だから何らかの理由で:

<?php $_subCategory->getIncludeInMenu() ?>

私が走った後、私のために働いていませんでした:

<?php foreach($_parentCategory->getChildrenCategories() as $_subCategory) : ?>

オブジェクトは同じモデルのままでしたが、['include_in_menu'] はオブジェクトの一部ではなくなりました。私はこの解決策が好きではありませんが、オブジェクトを再変換しました:

<?php $_subCategory = Mage::getModel('catalog/category')->load($_subCategory->getId()) ?>

そして、それはうまくいきました。子を取得するとオブジェクトが取り除かれる理由はわかりませんが、そうです。

于 2012-05-09T20:04:07.900 に答える