【问题标题】:Magento showing inactive categories in topmenuMagento 在顶部菜单中显示非活动类别
【发布时间】:2012-07-25 15:22:07
【问题描述】:

在我的 CMS 中,我已经禁用了一些类别出现在我的导航中(见下面的截图),但这些类别仍然出现在我的顶部菜单块中。

这是我的 page/html/topmenu.phtml 文件中的代码 - 我需要更改哪些内容才能阻止这些类别出现?

我正在使用 Magento CE 1.7

<?php $_menu = $this->getHtml('level-top');?>
<?php if($_menu): ?>
<div class="nav-container">
    <ul id="nav">
        <?php echo $_menu ?>
    </ul>
</div>
<?php endif ?>


(来源:i.imm.io

[编辑]

当我这样做时

foreach(Mage::helper('catalog/category')->getStoreCategories() as $c)
{
  $cat = Mage::getModel('catalog/category')->load($c->getId());
  var_dump($cat->getIncludeInMenu());
}

所有类别都返回 1,尽管在管理面板中将两个根类别设置为 no。

我已关闭并清除缓存,并且已多次重新索引我的类别和产品。

我知道该选项已保存到数据库中,因为当我浏览并再次返回时,该选项仍设置为“否”,这表明问题在于类别模型加载或报告选项错误。

【问题讨论】:

    标签: php magento magento-1.7


    【解决方案1】:

    试试这一行:

    <?php $_menu = $this->renderCategoriesMenuHtml(0,'level-top') ?>
    

    renderCategoriesMenuHtml 检查类别是否处于活动状态。

    【讨论】:

    • 这会引发异常。我无法在 Mage_Page_Block_Html_Topmenu 中找到该功能。
    • 嗯.. 他们一定在 1.7 中改变了它。对不起
    【解决方案2】:

    我已经开设了多家商店。每个商店的每个类别和产品字段都有自己的重复值集。我一直在做的是更改默认值,这些默认值在各个商店视图中被忽略。要解决此问题,我必须更改商店视图(位于管理部分的顶部/左侧)然后设置字段值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多