Frage

Das Menü benutzerdefinierter Modul wird unter Rollenressourcen angezeigt. Unter Rollenressourcen klicke ich auf die Checkbox und speichere. Ich lade dann die Rolle neu und die Check-Box wird nicht mehr überprüft. Ich habe die Menüelemente im Grunde genommen in das ACL XML -Element kopiert. Warum passiert das?

config.xml

<?xml version="1.0"?>
<config>
...
    <adminhtml>
        <menu>
            <customModuleHeader translate="title" module="custommodule">
                <title>customModule</title>
                <sort_order>60</sort_order>
                <children>
                    <custommodule_configform translate="title" module="custommodule">
                        <title>custommodule Configuration</title>
                        <sort_order>50</sort_order>
                        <children>
                            <custommodule_configform translate="title" module="custommodule">
                                <title>Settings</title>
                                <action>custommodule/adminhtml_configuration</action>
                                <sort_order>10</sort_order>
                            </custommodule_configform>
                        </children>
                    </custommodule_configform>
                </children>
            </customModuleHeader>
        </menu>
        <layout>
...

admin.html

<?xml version="1.0"?>
<config>
    <acl>
        <resources>
            <admin>
                <children>
                    <customModuleHeader translate="title" module="custommodule">
                        <title>customModule</title>
                        <sort_order>60</sort_order>
                        <children>
                            <custommodule_configform translate="title" module="custommodule">
                                <title>custommodule Configuration</title>
                                <sort_order>50</sort_order>
                                <children>
                                    <custommodule_configform translate="title" module="custommodule">
                                        <title>Settings</title>
                                        <sort_order>10</sort_order>
                                    </custommodule_configform>
                                </children>
                            </custommodule_configform>
                        </children>
                    </customModuleHeader>
                </children>
            </admin>
        </resources>
    </acl>
</config>
War es hilfreich?

Lösung

Dies ist Syntax So erstellen Sie das Menü im Magento -Administratorfeld. Sie können dies befolgen

/app/code/local//etc/adminhtml.xml

<?xml version="1.0"?>
<config>
<menu>
    <[module] module="[module]">
        <title>[Module]</title>
        <sort_order>71</sort_order>               
        <children>
            <items module="[module]">
                <title>Manage Items</title>
                <sort_order>0</sort_order>
                <action>[module]/adminhtml_[module]</action>
            </items>
        </children>
    </[module]>
</menu>
<acl>
    <resources>
        <all>
            <title>Allow Everything</title>
        </all>
        <admin>
            <children>
                <[module]>
                    <title>[Module] Module</title>
                    <sort_order>200</sort_order>
                </[module]>
            </children>
        </admin>
    </resources>   
</acl>
<layout>
    <updates>
        <[module]>
            <file>[module].xml</file>
        </[module]>
    </updates>
</layout>

Andere Tipps

Dies geschieht aufgrund der Menüabschnitt -Tags nicht den ACL -Tags. Ich habe die von Ihnen bereitgestellten Codeausschnitte überprüft. Aber es gab keine Fehler. Ich empfehle Ihnen, diese beiden Abschnitte (Menüerklärung und ACL) gründlich zu überprüfen.

(Gleichzeitig stellen Sie sicher, dass Sie ACL in admin.html gemäß Ihrer Frage nicht definiert haben.)

Sie können sowohl die Menüerklärung als auch die ACL einlegen adminhtml.xml

Im Folgenden finden Sie einen Beispielcode, dem Sie folgen können.

<?xml version="1.0" ?>
<config>
    <menu>
        <mycustom_menu translate="title" module="YOUR_MODULE_NAME">
            <title>My Menu</title>
            <sort_order>100</sort_order>
            <children>
                <!-- children -->
                <subitem translate="title" module="YOUR_MODULE_NAME">
                    <title>Subitem</title>
                    <sort_order>10</sort_order>
                    <action>adminhtml/mycustom_controller/</action>
                </subitem>
            </children>
        </mycustom_menu>
    </menu>
    <acl>
        <resources>
            <admin>
                <children>
                    <mycustom_menu translate="title" module="YOUR_MODULE_NAME">
                        <title>My Menu</title>
                        <sort_order>300</sort_order>
                        <children>
                            <!-- children -->
                            <subitem translate="title" module="YOUR_MODULE_NAME">
                                <title>Subitem</title>
                                <sort_order>10</sort_order>
                            </subitem>
                        </children>
                    </mycustom_menu>
                </children>
            </admin>
        </resources>
    </acl>
</config>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top