14

使用 Magento 电子商务系统,是否可以从管理面板导航菜单中删除项目?更一般地说,有没有办法使用配置覆盖系统从配置中删除现有元素?

我知道我可以使用看起来像这样的覆盖添加到导航中

<?xml version="1.0"?>
<config>
    <modules>
        <Company_Module>
            <version>
                0.1.0
            </version>
        </Company_Module>
    </modules>

    <adminhtml>
        <menu>
             <cms translate="title" module="cms">
                <title>The CMS</title>
                <sort_order>70</sort_order>
                <children>
                    <foo translate="title" module="cms">
                        <title>Foo Item</title>
                        <action>adminhtml/foo</action>
                    </foo>
                </children>
             </cms>
        </menu>    
    </adminhtml>
</config>

但是我将/如何完全抑制 CMS 导航项?

4

4 回答 4

14

更清洁的方法:

添加adminhtml.xml(例如,添加到保留所有其他自定义内容的现有模块,或创建新模块)

<?xml version="1.0" ?>
<config>
    <menu>
        <xmlconnect>
            <disabled>1</disabled>
        </xmlconnect>
    </menu>
</config>
于 2012-11-15T16:49:12.127 回答
11

您可以将虚假模块依赖项注入到 config.xml 中的菜单项中。

在你的情况下,

<adminhtml>
  <menu>
    <cms translate="title" module="cms">
      <depends><module>HideMe</module></depends>
    </cms>
  </menu>
</adminhtml>
于 2009-04-20T20:24:10.697 回答
4

我认为 Alan 仍然不需要任何人来问这个问题,但是对于可能最终阅读此问题的其他任何人来说,使用它会更好一些:

<adminhtml>
  <menu>
    <cms translate="title" module="cms">
      <depends><config>some/configuration/flag</config></depends>
    </cms>
  </menu>
</adminhtml>
于 2012-05-24T20:33:54.053 回答
2

对于特定的菜单点,您可以使用:

<?xml version="1.0"?>
<config>
    <menu>
        <customer>
            <children>
                <online>
                    <disabled>1</disabled>
                </online>
            </children>
        </customer>
    </menu>
</config>
于 2013-08-02T09:05:23.843 回答