2012-08-04 8 views
5

Il mio codice esistente crea un menu simile a questo.Come aggiungo un sottomenu ad un menu esistente in Magento?

custom magento menu

Ma io voglio un menu che è un sottomenu del menu Catalogo.

Ecco il mio codice esistente nel adminhtml.xml

<?xml version="1.0" ?> 
<config> 
    <menu> 
     <mycustom_menu translate="title" module="brands"> 
      <title>My Custom Menu Item</title> 
      <sort_order>300</sort_order> 
      <children> 
       <!-- child items go here --> 
       <subitem translate="title" module="brands"> 
        <title>Manage Brands</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="brands"> 
         <title>My Custom Menu Item</title> 
         <sort_order>300</sort_order> 
         <children> 
          <subitem translate="title" module="brands"> 
           <title>Subitem</title> 
           <sort_order>10</sort_order> 
          </subitem> 
         </children> 
        </mycustom_menu> 
       </children> 
      </admin> 
     </resources> 
    </acl> 
</config> 

risposta

24

Invece di utilizzare <mycustom_menu> è necessario riutilizzare il nome nodo che è stato utilizzato nel adminhtml.xml del modulo catalogo. Questo nome è catalog.

Così il vostro XML dovrebbe essere simile:

<?xml version="1.0"?> 
<config> 
     <menu> 
      <catalog> 
        <children> 
          <your_subitem> 
            <title>Subitem 1</title> 
            <sort_order>10</sort_order> 
            <action>adminhtml/your_action</action> 
          </your_subitem> 
        </children> 
      </catalog> 
    </menu> 
    <acl> 
      <resources> 
        <admin> 
          <children> 
            <catalog> 
              <title>Subitem 1</title> 
              <sort_order>10</sort_order> 
            </catalog> 
          </children> 
        </admin> 
      </resources> 
    </acl> 
</config> 
+1

Quando provo a aggiungere questo codice nel config.xml, il nome del catalogo predefinito è stato sostituito con un sottotitolo nei ruoli acl. come posso correggerlo – Naveenbos

+0

@Naveenbos Hai ragione, il codice per l'ACL non è corretto, dovrebbe essere '\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t Sottovoce 1 \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t ' – electroid

0

Ad esempio, per aggiungere sottomenu nella scheda del cliente:

<menu> 
    <customer> 
     <children> 
      <vendor module="yourmodule"> 
      <title>Your Title</title> 
      <sort_order>0</sort_order> 
      <action>admin_yourmodule/adminhtml_yourmoduleaction</action> 
      </vendor> 
     </children> 
    </customer> 
</menu> 
Problemi correlati