Удаление элемента из панели навигации администратора Magento
Используя систему Magento Ecommerce, можно удалить элемент из меню навигации панели администратора? В более общем плане, есть ли способ использовать систему переопределения config для удаления существующих элементов из конфигурации?
Я знаю, что могу добавить в навигацию переопределение, которое выглядит примерно так:
<?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?
Ответы
Ответ 1
Более чистый способ сделать это:
Добавьте adminhtml.xml (например, к существующим модулям, которые хранят все другие материалы настройки или создают новый модуль)
<?xml version="1.0" ?>
<config>
<menu>
<xmlconnect>
<disabled>1</disabled>
</xmlconnect>
</menu>
</config>
Ответ 2
Вы можете ввести зависимость фиктивного модуля в пункт меню в файле config.xml.
В вашем случае
<adminhtml>
<menu>
<cms translate="title" module="cms">
<depends><module>HideMe</module></depends>
</cms>
</menu>
</adminhtml>
Ответ 3
Я не думаю, что Алану все равно понадобится кто-нибудь, чтобы задать этот вопрос, но для кого-то еще, кто может это прочитать, было бы лучше использовать:
<adminhtml>
<menu>
<cms translate="title" module="cms">
<depends><config>some/configuration/flag</config></depends>
</cms>
</menu>
</adminhtml>
Ответ 4
Для конкретной точки меню вы можете использовать:
<?xml version="1.0"?>
<config>
<menu>
<customer>
<children>
<online>
<disabled>1</disabled>
</online>
</children>
</customer>
</menu>
</config>